从python转换日期格式时出错。
我的代码
pubDate = "Thu, 08 Jul 2021 17:34:00 +0900"
pubDate = datetime.datetime.strptime(pubDate, "%a, %d %b %Y %H:%M:%S +0900")
错误代码
File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/_strptime.py", line 568, in _strptime_datetime
tt, fraction, gmtoff_fraction = _strptime(data_string, format)
File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/_strptime.py", line 349, in _strptime
raise ValueError("time data %r does not match format %r" %
ValueError: time data 'Thu, 08 Jul 2021 18:06:00 +0900' does not match format '%a, %d %b %Y %H:%M:%S +0900'
1条答案
按热度按时间bttbmeg01#
我复制了你的代码,它工作正常,我不明白那个错误。
我拿走了一个
datetime
因为我是如何进口的,但这取决于你。错误可能是因为%a
视区域而定:“由于格式取决于当前区域设置,因此在对输出值进行假设时应小心。字段顺序会有所不同(例如,“月/日/年”与“日/月/年”),输出可能包含使用区域设置的默认编码编码的unicode字符(例如,如果当前区域设置为ja_jp,则默认编码可以是eucjp、sjis或utf-8中的任何一种;使用locale.getlocale()确定当前区域设置的编码。“
我建议检查您的区域设置,以查看日期名称格式是否正确或不同。
更多信息:
https://docs.python.org/3/library/datetime.html#strftime-和strtime行为