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

问题描述 投票:0回答:1

基于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'
python strptime
1个回答
0
投票

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

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

为了处理你的情况,你应该考虑使用dateutil.parser,并为你想要支持的时区给它一个tzinfo

© www.soinside.com 2019 - 2024. All rights reserved.