将军事时间从文本文件转换为标准时间Python

将军事时间从文本文件转换为标准时间Python,python,time,standards,Python,Time,Standards,我在如何将军事时间从文本文件转换为标准时间并丢弃所有错误值的逻辑上遇到了问题。我只到了一个点,用户被要求输入文件,内容显示在输入的文本文件中。请帮助我Python的对象使用“军事”时间。您可以这样做: >>> t = datetime.time(hour=15, minute=12) >>> u = datetime.time(hour=16, minute=44) >>> t = datetime.datetime.combine(date

我在如何将军事时间从文本文件转换为标准时间并丢弃所有错误值的逻辑上遇到了问题。我只到了一个点,用户被要求输入文件,内容显示在输入的文本文件中。请帮助我

Python的对象使用“军事”时间。您可以这样做:

>>> t = datetime.time(hour=15, minute=12)
>>> u = datetime.time(hour=16, minute=44)
>>> t = datetime.datetime.combine(datetime.datetime.today(), t)
>>> t
datetime.datetime(2011, 5, 11, 15, 12)
>>> u = datetime.datetime.combine(datetime.datetime.today(), u)
>>> t - u
datetime.timedelta(-1, 80880)
raw_time = '2244'
converted_time = datetime.time(hour=int(raw_time[0:2]), minute=int(raw_time[2:4]))
converted_time = datetime.datetime.combine(datetime.datetime.today(), converted_time)
通过一点旋转,像您描述的转换应该非常简单


如果看不到任何代码,就很难说出您到底想要什么。但我想你可以这样做:

>>> t = datetime.time(hour=15, minute=12)
>>> u = datetime.time(hour=16, minute=44)
>>> t = datetime.datetime.combine(datetime.datetime.today(), t)
>>> t
datetime.datetime(2011, 5, 11, 15, 12)
>>> u = datetime.datetime.combine(datetime.datetime.today(), u)
>>> t - u
datetime.timedelta(-1, 80880)
raw_time = '2244'
converted_time = datetime.time(hour=int(raw_time[0:2]), minute=int(raw_time[2:4]))
converted_time = datetime.datetime.combine(datetime.datetime.today(), converted_time)
现在,您可以使用
converted_time
,添加和减去
timedelta
对象。仅供参考,您可以创建一个
timedelta
,如下所示:

td = datetime.timedelta(hours=4)

timedelta
构造函数可能的关键字参数的完整列表是。

与其他两个不同,这不是一个正确的答案,但我在python中处理日期和时间时所使用的原则是:从用户处获取数据后,尽快转换为datetime对象,并且仅当您将值呈现给用户时才将其转换回字符串


您需要的大多数日期/时间数学都可以由datetime对象及其近亲timedelta对象完成。除非您需要时间增量与其他时间增量的比率,但这是另一回事。

等等,这是如何工作的?javapro1:因为您没有提供任何代码,所以很难说“代码中的什么地方”会出现。您为什么要这样做?军事时间好多了!:-)