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

2024-10-04 07:28:14 发布

您现在位置:Python中文网/ 问答频道 /正文

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


Tags: 文件用户内容标准错误时间逻辑文本文件
3条回答

这不是一个像另外两个一样的正确答案,但是我在python中处理日期和时间时使用的哲学:从用户那里得到数据后尽快转换为datetime对象,只有当您将值返回给用户时才转换回字符串。在

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

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)

只要稍加推敲,像你描述的那样的转换应该很简单。在


如果没有看到任何代码,很难判断您到底想要什么。但我想你可以这样做:

^{pr2}$

现在您可以使用converted_time,对timedelta对象进行加减。仅供参考,您可以创建一个timedelta,如下所示:

td = datetime.timedelta(hours=4)

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

from dateutil.parser import parse
time_today = parse("08:00")

from dateutil.relativedelta import relativedelta
required_time = time_today-relativedelta(minutes=35)

print required_time
datetime.datetime(2011, 5, 11, 7, 25)

相关问题 更多 >