prega cosa c'è di sbagliato con il mio codice:Ottenere la data a partire dalla settimana numero
import datetime
d = "2013-W26"
r = datetime.datetime.strptime(d, "%Y-W%W")
print(r)
Display "2013-01-01 00:00:00", Grazie.
prega cosa c'è di sbagliato con il mio codice:Ottenere la data a partire dalla settimana numero
import datetime
d = "2013-W26"
r = datetime.datetime.strptime(d, "%Y-W%W")
print(r)
Display "2013-01-01 00:00:00", Grazie.
Un numero di settimana non è sufficiente per generare una data; hai bisogno anche di un giorno della settimana. Aggiungere un default:
import datetime
d = "2013-W26"
r = datetime.datetime.strptime(d + '-0', "%Y-W%W-%w")
print(r)
Il modello -0
e -%w
dice al parser di scegliere la domenica in quella settimana. Questo produce:
2013-07-07 00:00:00
È possibile scegliere il proprio giorno della settimana, qualunque sia il caso migliore; il modello %W
basa le settimane da lunedì, quindi forse -1
è un valore predefinito migliore qui.
Vedere la sezione strftime()
and strptime()
behaviour nella documentazione, nota 4:
Quando viene utilizzato con il metodo di
strptime()
,%U
e%W
sono usati solo nei calcoli quando vengono specificati il giorno della settimana e l'anno.