4

假设在同一(以色列)时区同时输入文本,以下自由文本行是等效的:

Wed Sep  9 16:26:57 IDT 2009
2009-09-09 16:26:57
16:26:57
September 9th, 16:26:57

是否有一个 python 模块可以将所有这些文本日期转换为(相同的)datetime.datetime实例?

我想在命令行工具中使用它,该工具将获取自由文本日期和时间作为参数,并返回不同时区的等效日期和时间,例如:

~$wdate 16:00 Israel
Israel:        16:00
San Francisco: 06:00
UTC:           13:00

或者:

~$wdate 18:00 SanFran
San Francisco  18:00:22
Israel:        01:00:22 (Day after)
UTC:           22:00:22

有任何想法吗?

谢谢,

乌迪

4

3 回答 3

6

python-dateutil包听起来很有帮助。您的示例仅使用带有(神奇地缩短的)城市标识符的简单 HH:MM 时间戳,但它似乎也能够处理更复杂的格式,例如问题前面的那些格式。

于 2009-09-09T13:43:57.117 回答
3

parsedatetime似乎是这个特定任务的一个非常有能力的模块。

于 2009-09-09T14:39:12.660 回答
0

你可以吗time.strptime

像这样 :

time.strptime("2009-09-09 16:26:57", "%Y-%m-%d %H:%M:%S")

它将返回一个 struct_time 值(有关 python 文档页面的更多信息)。

于 2009-09-09T13:48:42.140 回答