简单的日期(时间和时区)。
simple-date的Python项目详细描述
包装纸 datetime, pytz和 tzlocal python 3.2+的包。 Full docs在github上。
示例
给我一个这些日期的UTC日期时间!
>>> for date in '1/6/2013 BST', '1/6/2013 EST', 'Tue, 18 Jun 2013 12:19:09 -0400': >>> print(best_guess_utc(date)) 2013-05-31 23:00:00+00:00 2013-01-06 05:00:00+00:00 2013-06-18 16:19:09+00:00
现在几点了,在纽约?
>>> SimpleDate(tz='America/New_York') SimpleDate('2013-06-14 13:14:17.295943 EDT', tz='America/New_York')
在英国是什么时候(国家代码是针对英国的)?
>>> SimpleDate('2013-06-14 13:14:17.295943 EDT').convert(country='GB') SimpleDate('2013-06-14 18:14:17.295943 BST', tz='Europe/London')
此电子邮件日期的UTC是多少?
>>> SimpleDate('Fri, 14 Jun 2013 13:13:42 -0400').utc SimpleDate('Fri, 14 Jun 2013 17:13:42 +0000', tz='UTC')
从现在起一个星期几(我住在智利)?
>>> SimpleDate() + timedelta(days=7) SimpleDate('2013-06-21 13:55:20.791519 CLT', tz='America/Santiago')
今年圣诞节的星期几?
>>> SimpleDate(2013, 12, 24).weekday 1
作为一个天真的约会时间?
>>> SimpleDate(2013, 12, 24).naive.datetime datetime.datetime(2013, 12, 24, 0, 0)
美国东部时间1234567890点几点?
>>> SimpleDate(1234567890, tz='EST') AmbiguousTimezone: 3 distinct timezones found: <'EST'>; <'Australia/NSW'>; ...
哇哦!那些疯狂的澳大利亚人在干什么?让我们强制美国(仅限):
>>> SimpleDate(1234567890, tz='EST', country='US') SimpleDate('2009-02-13 18:31:30.000000 EST')
或者,我们可以优先考虑美国,采取第一种解决方案 我们发现:
>>> SimpleDate(1234567890, tz='EST', country=prefer('US'), unsafe=True) SimpleDate('2009-02-13 18:31:30.000000 EST')
那是哪一天?
>>> SimpleDate(1234567890, tz='EST', country=prefer('US'), unsafe=True).strftime('%A') 'Friday'
许可证
(c)20132015安德鲁·库克,andrew@acooke.org;公开发行 任何用途,但绝对没有保证。