python的datetime.strptime_Python strptime()和时区?

返回与Date_String对应的日期时间,按格式解析。这相当于datetime(*(time.strptime(date_string, format)[0:6])).

看到了[0:6]?这会让你(year, month, day, hour, minute, second)..没别的了。没有提到时区。

有趣的是,[Win XP SP2,Python2.6,2.7]将您的示例传递给time.strptime不工作,但如果你去掉“%Z”和“EST”,它确实有效。也使用“UTC”或“GMT”代替“EST”工作。“PST”和“mez”不起作用。令人费解。

值得注意的是,在3.2版时已经更新了这一版本,现在相同的文档还声明了以下内容:当向strptime()方法提供%z指令时,将产生一个感知的datetime对象。结果的tzinfo将被设置为一个时区实例。

注意,这不适用于%Z,所以情况很重要。请参见以下示例:

In [1]: from datetime import datetime

In [2]: start_time = datetime.strptime('2018-04-18-17-04-30-AEST','%Y-%m-%d-%H-%M-%S-%Z')

In [3]: print("TZ NAME: {tz}".format(tz=start_time.tzname()))

TZ NAME: None

In [4]: start_time = datetime.strptime('2018-04-18-17-04-30-+1000','%Y-%m-%d-%H-%M-%S-%z')

In [5]: print("TZ NAME: {tz}".format(tz=start_time.tzname()))

TZ NAME: UTC+10:00

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值