Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将具有月份名称的字符串转换为datetime_Python_Datetime - Fatal编程技术网

Python 将具有月份名称的字符串转换为datetime

Python 将具有月份名称的字符串转换为datetime,python,datetime,Python,Datetime,我使用的是pickadate.js,它以以下格式返回日期: 8 March, 2017 我想将其转换为以下格式的datetime: yyyy-mm-dd 在Python中实现这一点的最佳方法是什么 在Python中,这是一个使用datetime格式字符串的简单练习: from datetime import datetime s = "8 March, 2017" d = datetime.strptime(s, '%d %B, %Y') print(d.strftime('%Y-%m-%

我使用的是
pickadate.js
,它以以下格式返回日期:

8 March, 2017
我想将其转换为以下格式的
datetime

yyyy-mm-dd

在Python中实现这一点的最佳方法是什么

在Python中,这是一个使用
datetime
格式字符串的简单练习:

from datetime import datetime

s = "8 March, 2017"
d = datetime.strptime(s, '%d %B, %Y')
print(d.strftime('%Y-%m-%d'))
有关所有格式限定符的完整说明,请参见表

这里我使用
datetime.strtime
方法将datepicker.js字符串转换为Python datetime对象。我使用
.strftime
方法将该对象打印为字符串,使用您想要的格式。起初,这些格式字符串很难记住,但您可以随时查找它们。最后,他们组织得很好


不过,我确实想知道:在最后一步中,使用JavaScript是否比切换到Python更好?当然,如果您在流程的其他地方使用Python,这是一个简单的解决方案。

马克·里德的建议可能对您的情况最好。一个经常被忽略的日期选择是箭头模块,它提供了一些有趣的功能。在这种情况下,您可以执行以下操作:

>>> import arrow
>>> arrow.get('8 March, 2017', 'D MMMM, YYYY').format('YYYY-MM-DD')
'2017-03-08'
作为一个功能的示例,如果您捕获该日期,您可以将其格式化为俄语

>>> aDate = arrow.get('8 March, 2017', 'D MMMM, YYYY')
>>> aDate.format('YYYY MMMM DD', locale='ru')
'2017 марта 08'

您可以将pickadate.js配置为以其他方式格式化日期,例如,
$('.datepicker')。pickadate({formatSubmit:'yyyy-mm-dd'})
.Format说明符
A
/
A
B
/
B
分别是工作日和月份,因为它们通常都是按指定的顺序出现的。在这两种情况下,小写字母表示缩写,大写字母表示全名。谢谢你的回答!延伸至:
s=“2017年3月8日,23:42:42.314”
d=datetime.strtime(s,'%d-%b-%Y,%H:%M:%s.%f')
谢谢,我不熟悉这个模块。非常简洁的日期格式。这实际上是一个非常有趣的模块!谢谢