我有这样的日期字符串:
'January 11, 2010'
我需要一个返回星期几的函数,比如
'mon', or 'monday'
等。 我无法在Python帮助中的任何地方找到它。 任何人?感谢。
答案 0 :(得分:52)
您可能希望使用strptime and strftime
中的datetime
方法:
>>> import datetime
>>> datetime.datetime.strptime('January 11, 2010', '%B %d, %Y').strftime('%A')
'Monday'
或'Mon'
:
>>> datetime.datetime.strptime('January 11, 2010', '%B %d, %Y').strftime('%a')
'Mon'
答案 1 :(得分:21)
使用date.weekday()
以星期为单位返回星期几,其中星期一为0,星期日为6。
http://docs.python.org/2/library/datetime.html#datetime.date.weekday
答案 2 :(得分:6)
可以使用第三方解析器,例如dateutil。
原始问题的代码:
>>> from dateutil import parser
>>> parser.parse('January 11, 2010').strftime("%a")
'Mon'
>>> parser.parse('January 11, 2010').strftime("%A")
'Monday'
答案 3 :(得分:2)
我认为最快的方法如下:
df[Date_Column].dt.weekday_name
答案 4 :(得分:1)
>>> import time
>>> dateStr = 'January 11, 2010'
>>> timestamp = time.strptime(dateStr, '%B %d, %Y')
>>> timestamp
time.struct_time(tm_year=2010, tm_mon=1, tm_mday=11, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=11, tm_isdst=-1)
答案 5 :(得分:1)
import time
time.strftime('%A')