day = "13/Oct/2013"
print("Parsing :",day)
day, mon, yr= day.split("/")
sday = yr+" "+day+" "+mon
myday = time.strptime(sday, '%Y %d %b')
Sstart = yr+" "+time.strftime("%U",myday )+" 0"
Send = yr+" "+time.strftime("%U",myday )+" 6"
startweek = time.strptime(Sstart, '%Y %U %w')
endweek = time.strptime(Send, '%Y %U %w')
print("Start of week:",time.strftime("%a, %d %b %Y",startweek))
print("End of week:",time.strftime("%a, %d %b %Y",endweek))
print("Data entered:",time.strftime("%a, %d %b %Y",myday))
out:
Parsing : 13/Oct/2013
Start of week: Sun, 13 Oct 2013
End of week: Sat, 19 Oct 2013
Sun, 13 Oct 2013
Ich habe Python in den letzten 2 Tagen gelernt und mich gefragt, ob es einen saubereren Weg gibt, dies zu tun. Diese Methode funktioniert ... es sieht einfach hässlich aus und es scheint albern, für jedes Datum eine neue Zeitvariable erstellen zu müssen, und das sollte es auch Es ist eine Möglichkeit, das angegebene Datum durch einen einfachen Anruf auf den Anfang und das Ende der Woche zu verschieben, aber ich konnte im Internet oder in der Dokumentation nichts finden, was so aussieht, als würde es funktionieren.