将日期字符串转换为星期几

zbi*_*nsd 25 python datetime

我有这样的日期字符串:

'January 11, 2010'
Run Code Online (Sandbox Code Playgroud)

我需要一个返回星期几的函数,比如

'mon', or 'monday'
Run Code Online (Sandbox Code Playgroud)

我在Python帮助中的任何地方都找不到这个.任何人?谢谢.

And*_*lev 55

您可能希望使用以下strptime and strftime方法datetime:

>>> import datetime
>>> datetime.datetime.strptime('January 11, 2010', '%B %d, %Y').strftime('%A')
'Monday'
Run Code Online (Sandbox Code Playgroud)

或者'Mon':

>>> datetime.datetime.strptime('January 11, 2010', '%B %d, %Y').strftime('%a')
'Mon'
Run Code Online (Sandbox Code Playgroud)


Lah*_*uzz 21

use date.weekday() 以星期为单位返回星期几,其中星期一为0,星期日为6.

http://docs.python.org/2/library/datetime.html#datetime.date.weekday


Fel*_*Yan 6

可以使用第三方解析器,例如dateutil.

和原始问题的代码:

>>> from dateutil import parser
>>> parser.parse('January 11, 2010').strftime("%a")
'Mon'
>>> parser.parse('January 11, 2010').strftime("%A")
'Monday'
Run Code Online (Sandbox Code Playgroud)


Zed*_*ang 6

我认为最快的方法如下:

df[Date_Column].dt.weekday_name
Run Code Online (Sandbox Code Playgroud)