it-swarm.com.de

Konvertieren Sie die Datumszeichenfolge in Wochentag

Ich habe Datumsstrings wie diesen:

'January 11, 2010'

und ich brauche eine Funktion, die den Wochentag zurückgibt, wie

'mon', or 'monday'

usw. Ich kann das nirgends in der Python Hilfe finden. Jemand? Danke.

24
zbinsd

Vielleicht möchten Sie strptime and strftime Methoden von datetime :

>>> import datetime
>>> datetime.datetime.strptime('January 11, 2010', '%B %d, %Y').strftime('%A')
'Monday'

oder für 'Mon':

>>> datetime.datetime.strptime('January 11, 2010', '%B %d, %Y').strftime('%a')
'Mon'
54
Andrey Sobolev

benutze date.weekday() Gib den Wochentag als Ganzzahl zurück, wobei Montag 0 und Sonntag 6 ist.

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

21
Lahiruzz

Ein Parser eines Drittanbieters könnte verwendet werden, z. B. dateutil .

Und Code für Ihre ursprüngliche Frage:

>>> from dateutil import parser
>>> parser.parse('January 11, 2010').strftime("%a")
'Mon'
>>> parser.parse('January 11, 2010').strftime("%A")
'Monday'
6
Felix Yan

Ich denke, der schnellste Weg, dies zu tun, ist wie folgt:

df[Date_Column].dt.weekday_name
3
Zed Fang
import time

time.strftime('%A')
1
Prasanna
>>> 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)
1
zbinsd