我有下面的python代码来计算一个星期日的天数、小时、分钟、秒和毫秒。我希望输出为:
x sols=x天x小时x分x秒x毫秒
我发现我必须使用timedelta,因为它需要毫秒。你知道吗
我已经编写了以下代码,但它没有为值提供正确的输出。当他们超过60岁时,他们需要被传下去,因为60秒等于1小时。但是值可以超过60。例如,当我输入一个值>;1,比如4,我得到aswer:4sol=4天2小时38分7220秒976毫秒。你知道吗
from datetime import datetime, timedelta
sol = timedelta(hours=24,minutes=39,seconds=35,milliseconds=244)
amount = input("Amount of sols: ")
earth=int(amount)*sol
hours = int(earth.seconds/3600)
minutes = int((earth.seconds-(hours*3600))/60)
secondes = int(earth.seconds-(minutes*60))
millisecondes = int(earth.microseconds/1000)
print (amount + " sol = " + str(earth.days) + ' days, ' + str(hours) + ' hours, ' + str(minutes) + ' minutes, ' + str(secondes) + ' secondes, ' + str(millisecondes) + ' millisecondes')
小时、分钟和毫秒是这样计算的,因为timedelta显然不能给出它们。你知道吗
earth.days
earth.seconds
存在,但是
earth.hours
earth.minutes
earth.milliseconds
不存在。我不明白,因为我可以给他们第2行的值。你知道吗
我认为我试图实现我想要的是不正确的。你知道吗
我认为,如果使用“秒”作为浮点数,而不是使用
datetime
库,它会工作得更好。datetime
库中有很多关于地球日期和时间的假设,这些假设在火星上是不成立的。你知道吗相关问题 更多 >
编程相关推荐