datetime.strptime 格式与格式“%d. %经过'
datetime.strptime Format does not match format '%d. %B %Y'
我想将字符串日期类型转换为其他格式,如 dd-mm-yyyy
date_stringg='24. Juli 2020'
date_object = datetime.strptime((date_stringg), "%d. %B %Y")
print("date_object: ", date_object)
这看起来像是区域设置问题。请参阅以下示例:
>>> locale.setlocale(locale.LC_ALL, 'C')
'C'
>>> datetime.datetime.strptime('24. Julho 2020', '%d. %B %Y')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.8/_strptime.py", line 568, in _strptime_datetime
tt, fraction, gmtoff_fraction = _strptime(data_string, format)
File "/usr/local/lib/python3.8/_strptime.py", line 349, in _strptime
raise ValueError("time data %r does not match format %r" %
ValueError: time data '24. Julho 2020' does not match format '%d. %B %Y'
>>> locale.setlocale(locale.LC_ALL, 'pt_PT.utf8')
'pt_PT.utf8'
>>> datetime.datetime.strptime('24. Julho 2020', '%d. %B %Y')
datetime.datetime(2020, 7, 24, 0, 0)
您可能需要 select(可能 install/configure 您的底层系统)您在要解析的字符串中使用的语言。
在您看到的示例中,我用葡萄牙语编写了字符串 'Julho' (July),因此必须激活正确的语言环境。
另请参阅 setting the locale
上的 Python 文档
您可能需要设置语言环境。 Juli
不是有效的英语月份名称,我假设它是荷兰语。
假设您想要将荷兰语语言环境与日期时间一起使用,您可以执行以下操作
import locale
locale.setlocale(locale.LC_TIME, "nl_nl")
之后,它会识别 Juli
所以这会起作用
>>> date_stringg='24. Juli 2020'
>>>
>>> date_object = datetime.strptime((date_stringg), "%d. %B %Y")
>>> date_object
datetime.datetime(2020, 7, 24, 0, 0)
我想将字符串日期类型转换为其他格式,如 dd-mm-yyyy
date_stringg='24. Juli 2020'
date_object = datetime.strptime((date_stringg), "%d. %B %Y")
print("date_object: ", date_object)
这看起来像是区域设置问题。请参阅以下示例:
>>> locale.setlocale(locale.LC_ALL, 'C')
'C'
>>> datetime.datetime.strptime('24. Julho 2020', '%d. %B %Y')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.8/_strptime.py", line 568, in _strptime_datetime
tt, fraction, gmtoff_fraction = _strptime(data_string, format)
File "/usr/local/lib/python3.8/_strptime.py", line 349, in _strptime
raise ValueError("time data %r does not match format %r" %
ValueError: time data '24. Julho 2020' does not match format '%d. %B %Y'
>>> locale.setlocale(locale.LC_ALL, 'pt_PT.utf8')
'pt_PT.utf8'
>>> datetime.datetime.strptime('24. Julho 2020', '%d. %B %Y')
datetime.datetime(2020, 7, 24, 0, 0)
您可能需要 select(可能 install/configure 您的底层系统)您在要解析的字符串中使用的语言。 在您看到的示例中,我用葡萄牙语编写了字符串 'Julho' (July),因此必须激活正确的语言环境。
另请参阅 setting the locale
上的 Python 文档您可能需要设置语言环境。 Juli
不是有效的英语月份名称,我假设它是荷兰语。
假设您想要将荷兰语语言环境与日期时间一起使用,您可以执行以下操作
import locale
locale.setlocale(locale.LC_TIME, "nl_nl")
之后,它会识别 Juli
所以这会起作用
>>> date_stringg='24. Juli 2020'
>>>
>>> date_object = datetime.strptime((date_stringg), "%d. %B %Y")
>>> date_object
datetime.datetime(2020, 7, 24, 0, 0)