allzuviel erfahrung mit python. (programmiere allerdings seit ca 3 jahren in c++ und möchte nun umsteigen )
mein problem ist eine momentane "denkblockade"
folgendes:
ich möchte eine funktion schreiben, der ich einen Wochentag übergebe(0-6), desweiteren eine uhrzeit(0-24:0-59). diese funktion soll mir nun die zeit in sekunden vom jetzigen zeitpunkt bis zu dieser neuen uhrzeit.
folgendes beispiel:
es ist dienstag 17:00 und ich übergebe meiner funktion (0, 1500) - quasi nächsten montag um 15:00 wie muss der algorithmus aussehen, dass ich die sekunden von "jetzt" bis nächsten mo. 15:00 bekomm??
ich weiss nicht ob es in python möglichkeiten gibt sowas "einfacher" zu machen... in c++ hab ich die offis lib verwendet mit der das ziemlich einfach war und ich mir deswegen bislang keine großen gedanken machen musste...
vielen dank schon mal im vorraus
mein code schaut bis jetzt wie folgt aus:
Code: Alles auswählen
def calcDifToTime(self, nextWDay, nextTime):
difMin = 0
difHour = 0
difDays = 0
current = time.localtime()
curWDay = current[6]
curHour = current[3]
curMin = current[4]
nextTime = '0' + str(nextTime)
nextMin = int(nextTime[-2:])
nextHour = int(nextTime[:-2])
if nextMin < curMin:
difMin = nextMin + (60 - curMin)
else:
difMin = nextMin - curMin
if nextHour < curHour:
difHour = nextHour + (24 - curHour)
else:
difHour = nextHour - curHour
if (difMin + curMin) >= 60:
difHour -= 1
if nextWDay < curWDay:
difDays = nextWDay + (7 - curWDay)
else:
difDays = nextWDay - curWDay
if (difHour + curHour) >= 24:
difDays -= 1
return (60*difMin) + (60*60*difHour) + (24*60*60*difDays)