Datumsarithmetik - Wochentag vom Datum
Verfasst: Freitag 12. September 2008, 16:12
Tach,
habe mal wieder etwas herum gecodet und das ist dabei rausgekommen.
Dieser kleine Funktion berechnet vom Datum ausgehen, denn Wochentag.
Hoffe das diese Funktion euch irgendwann helfen wird.
MfG
BasterTWO
habe mal wieder etwas herum gecodet und das ist dabei rausgekommen.
Code: Alles auswählen
#
# Funktion: dateartihmeatik
# Autor: Christoph Heer
#
# Aufgabe:
# Berechnet mit der Datumsarithmetik, denn Wochentag vom Datum ausgehen.
#
# Verwendung:
# datearithmetik('12.09.2008')
#
import math
import re
def datearithmetik(date):
monthvalues = {1:0,2:3,3:3,4:6,5:1,6:4,7:6,8:2,9:5,10:0,11:3,12:5}
yearvalues = {17:4,18:2,19:0,20:6,21:4,22:2,23:0}
dayvalues = {0:'Sunday',1:'Monday',2:'Tuesday',3:'Wednesday',4:'Thursday',5:'Friday',6:'Saturday'}
filter = re.compile(r'(\d{2}).(\d{2}).(\d{2,})(\d{2,})')
date = filter.match(date)
if date != None:
date = [int(date.group(1)),int(date.group(2)),int(date.group(3)),int(date.group(4))]
else:
return 'Only date in format DD.MM.YYYY'
yearvalue = ((date[3] + (date[3] / 4)) % 7) + yearvalues[date[2]]
year = date[2] + date[3]
if year % 400 == 0:
changeyear == True
elif year % 100 == 0:
changeyear = False
elif year % 4 == 0:
changeyear = True
else:
changeyear = False
if changeyear == True:
if date[1] == 1:
yearvalue = yearvalue - 1
elif date[1] == 2:
yearvalue = yearvalue - 1
monthvalue = monthvalues[date[1]]
dayvalue = date[0]
weekdayvalue = (yearvalue + monthvalue + dayvalue) % 7
return dayvalues[weekdayvalue]
print datearithmetik('12.09.2008')
Hoffe das diese Funktion euch irgendwann helfen wird.
MfG
BasterTWO