【发布时间】:2018-03-06 08:14:33
【问题描述】:
我有一个以时间 (201803061500) 等命名的路径文件。我需要的是时间转换,因为我使用while 循环打开其中的一些文件,例如当我想要文件时出错(...1555 到 ... 1615)和 Python 看到一个明显的问题,因为 1555 之后是 1560,但我希望他将其转换为时间,所以在(...1555 将是 ... 1600)之后任何想法如何用吗?
顺便说一句。时间转换必须包含 4 位数字,因此不能是 16:00/16-00 等。它必须是 1600,因为它作为我的路径文件的输入。有什么想法吗?
更新 - 我这样做了,但这段代码很垃圾,我认为我的问题可以通过一个命令来解决。
Start_time_hours = input('Enter start time (hh): ' )
Start_time_minutes = input('Enter start time (mm): ')
if Start_time_hours >= 24:
print ("Values from 00 to 23 only!")
if Start_time_minutes >= 60:
x = Start_time_hours + 1
y = Start_time_minutes - Start_time_minutes
if y == 0:
print "Ok"
print x, y
if Start_time_minutes <= 55:
print Start_time_hours, Start_time_minutes
【问题讨论】:
-
你能添加一些你自己的代码吗,到目前为止你有什么尝试?
-
你试过 datetime.strptime() 吗?
-
@Ove 当然,但是在我的循环中,我需要在每个循环中添加 5 分钟,并且由于
datetime.strptime()是一个字符串,我不能这样做,而且当我将这种格式放入我的路径文件时,会发生错误,因为还有年份等。正如我所提到的,我只需要(HHMM - 小时分钟)。 -
datetime.strptime()的返回值不是字符串。它是一个 datetime 对象,你可以给它添加 timedelta 对象。 -
@Hiddenguy 正如 Ove 建议的那样,使用
timedelta(5 分钟)添加到您的datetime对象。添加timedelta后,您可以从结果中提取小时和分钟部分。
标签: python time datetime-conversion