我有一个这种格式的列表:
L = [445, 650, 920, 1130, 1340]
结果将是:['4:45', '6:50', '9:20', '13:40']
我试过这个:length = len(L)
L1 = str(L)
for i in range(length):
tm = datetime.strptime(L1[i], '%H%M').time()
print(tm)
最佳答案
该输入有点奇怪,您确定它不是十进制时间,例如450
是 450mn (7h30) 还是 4.45h aka 4h27?
如果您确定输入的描述正确,那么您可以使用 divmod(n, 100)
将您的时间一分为二(除以 100 的整数部分,其余部分),然后将这两个值放在 time
的相关字段中或 timedelta
:
L = [445, 650, 920, 1130, 1340]
for v in L:
h, m = divmod(v, 100)
print(datetime.time(hour=h, minute=m))
04:45:00
06:50:00
09:20:00
11:30:00
13:40:00
作为日期时间,日期时间没有意义must have the date part filled completely ,虽然你可以 combine引用时间date
获得 datetime
.
关于python - 如何使用日期时间将 int 转换为时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62694740/