如果我有一个代表我感兴趣的句号的数字,例如代表360分钟或6小时的数字360,我该如何将其转换为日期时间对象,以便我可以在其上执行标准的日期时间对象功能?
同样,如果我有00:30:00格式的datetime对象,代表30分钟,我该如何将其转换为普通的整数变量?
答案 0 :(得分:3)
import datetime
t = datetime.timedelta(minutes=360)
这将创建一个对象t
,您可以将其与其他日期时间对象一起使用。
要回答您刚编辑的第二个问题,您可以使用t.total_seconds()
将您的timedelta保留的任何内容返回到以秒为单位的整数。您必须手动转换为分钟或小时。
答案 1 :(得分:2)
您可能需要查看时间增量:
delta = datetime.timedelta(minutes=360)
答案 2 :(得分:0)
如果您的时间数据是'00:30:00'格式,那么您应该使用strptime
>>> from datetime import datetime
>>> time = '00:30:00'
>>> datetime.strptime(time, '%H:%M:%S).time()
datetime.time(0, 30)
如果您的数据是30(整数)格式
>>> from datetime import datetime, timedelta
>>> from time import strftime, gmtime
>>> minutes = timedelta(minutes=360)
>>> time = strftime('%H:%M:%S', gmtime(minutes.total_seconds()))
>>> datetime.strptime(time, '%H:%M:%S').time()
datetime.time(6, 0)