具有3个字符时区和AM / PM

时间:2017-12-18 22:29:18

标签: python strptime

根据strptime的文档,我相信我的代码对于3个字符的时区和AM / PM是正确的。

为什么Python 2.5和Python 3.6不像我使用的字符串时间格式?

import datetime
ts = datetime.datetime.strptime(
    "11/30/2017 01:08:05 PM CST", 
    '%m/%d/%Y %I:%M:%S %p %z'
)

import datetime
ts = datetime.datetime.strptime(
    "11/30/2017 01:08:05 PM CST", 
    '%m/%d/%Y %I:%M:%S %p %Z'
)

运行时都返回:

ValueError: time data '11/30/2017 01:08:05 PM CST' does 
not match format '%m/%d/%Y %I:%M:%S %p %Z'

1 个答案:

答案 0 :(得分:0)

CST不会解析strptime等符号时区。而且他们相对没有意义。是CST

  • 中央标准时间;或
  • 中国标准时间;或
  • 古巴标准时间。

要处理您的情况,您应该考虑使用dateutil.parser,并为您希望支持的时区提供tzinfo