Python 将日期转换为两位数字(TypeError:不支持的操作数类型-:';int';和';str';)
正在尝试将秒数转换为Python 将日期转换为两位数字(TypeError:不支持的操作数类型-:';int';和';str';),python,time,format,Python,Time,Format,正在尝试将秒数转换为dd:hh:mm:ss num_of_seconds = int(input("Enter number of seconds: ")) days = num_of_seconds // 86400 days = '%02d' % days hours = (num_of_seconds - (days*86400)) // 3600 hours = '%02d' % hours minutes = (num_of_seconds - (days*864
dd:hh:mm:ss
num_of_seconds = int(input("Enter number of seconds: "))
days = num_of_seconds // 86400
days = '%02d' % days
hours = (num_of_seconds - (days*86400)) // 3600
hours = '%02d' % hours
minutes = (num_of_seconds - (days*86400) - (hours*3600)) // 60
minutes = '%02d' % minutes
seconds = (num_of_seconds - (days*86400) - (hours*3600) - minutes*60)
seconds = '%02d' % seconds
print(days, ":", hours, ":", minutes, ":", seconds)
我希望不同时间的格式始终为两位数(例如05:00:00)您可以使用以下代码删除您的
类型错误:
seconds = 208920
seconds_in_day = 60 * 60 * 24
seconds_in_hour = 60 * 60
seconds_in_minute = 60
days = seconds // seconds_in_day
hours = (seconds - (days * seconds_in_day)) // seconds_in_hour
minutes = (seconds - (days * seconds_in_day) - (hours * seconds_in_hour)) // seconds_in_minute
left_over_seconds = seconds - days * seconds_in_day - hours * seconds_in_hour - minutes * seconds_in_minute
print(f'{days:02}', ":", f'{hours:02}', ":", f'{minutes:02}', ":", f'{left_over_seconds:02}')
你的问题是什么?将变量的字符串转换移到代码末尾。了解字符串和int之间的区别。字符串不支持数学运算。您应该使用整数进行计算,然后打印字符串。