Hallo
Ich bin ganz ganz neu bei Python - gestern mit einem Buch angefangen. Habe auch keinerlei andere Erfahrung mit Programmieren. Und nein, dies ist keine Schul-/Uniaufgabe *g*
Ich möchte, dass man ein Datum (dd.mm.yyyy) eingibt und als Ausgabe wird zum eingegebenen Datum 'n' (beispielsweise 50) Tage korrekt dazu addiert. Die Ausgabe soll auch wieder dd.mm.yyyy sein.
Dass ich dazu wohl raw_input(), mktime() und strftime() oder ähnlich benötige, nehme ich mal an. Aber wie genau der Code ausschauen soll...
Kann mir da bitte jemand weiter helfen?
Besten Dank
baumanns
Datum eingeben, danach wird automatisch 'n' Tage addieren
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo baumanns!baumanns hat geschrieben:Ich möchte, dass man ein Datum (dd.mm.yyyy) eingibt und als Ausgabe wird zum eingegebenen Datum 'n' (beispielsweise 50) Tage korrekt dazu addiert. Die Ausgabe soll auch wieder dd.mm.yyyy sein.
Willkommen im Python-Forum!
Code: Alles auswählen
>>> import datetime
>>> now = datetime.datetime.now()
>>> now
datetime.datetime(2008, 2, 10, 12, 5, 0, 406000)
>>> in_50_days = now + datetime.timedelta(days = 50)
>>> in_50_days
datetime.datetime(2008, 3, 31, 12, 5, 0, 406000)
>>> in_50_days.strftime("%d.%m.%Y")
'31.03.2008'
>>> now.strftime("%d.%m.%Y")
'10.02.2008'
>>>
Code: Alles auswählen
>>> today = datetime.date.today()
>>> today
datetime.date(2008, 2, 10)
>>> in_50_days = today + datetime.timedelta(days = 50)
>>> in_50_days
datetime.date(2008, 3, 31)
>>> in_50_days.strftime("%d.%m.%Y")
'31.03.2008'
>>> today.strftime("%d.%m.%Y")
'10.02.2008'
>>>
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Danke Gerold!gerold hat geschrieben:Code: Alles auswählen
>>> import datetime >>> now = datetime.datetime.now() >>> now datetime.datetime(2008, 2, 10, 12, 5, 0, 406000) >>> in_50_days = now + datetime.timedelta(days = 50) >>> in_50_days datetime.datetime(2008, 3, 31, 12, 5, 0, 406000) >>> in_50_days.strftime("%d.%m.%Y") '31.03.2008' >>> now.strftime("%d.%m.%Y") '10.02.2008' >>>
mfgCode: Alles auswählen
>>> today = datetime.date.today() >>> today datetime.date(2008, 2, 10) >>> in_50_days = today + datetime.timedelta(days = 50) >>> in_50_days datetime.date(2008, 3, 31) >>> in_50_days.strftime("%d.%m.%Y") '31.03.2008' >>> today.strftime("%d.%m.%Y") '10.02.2008' >>>
Gerold
Dein Code hilft mir schon einiges weiter. Vor allem das dazu addieren und die Ausgabe sind tiptop.
Nur wollte ich nicht vom aktuellen Datum ausgehen, sondern, dass man dieses selber eingeben muss.
Man wird also am Anfang aufgefordert ein Datum einzugeben, vielleicht mittels raw_input() ?
Merci
baumanns
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Naja, schau dir doch mal das Modul ``datetime`` und dort neben ``datetime`` auch noch ``timedelta`` an, das sollte alle deine Fragen beantworten.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo baumanns!baumanns hat geschrieben:Nur wollte ich nicht vom aktuellen Datum ausgehen, sondern, dass man dieses selber eingeben muss.
Man wird also am Anfang aufgefordert ein Datum einzugeben, vielleicht mittels raw_input() ?
Das sind genau die Dinge, die in jedem Pythonbuch beschrieben werden. Vielleicht wartest du mit deinen Fragen lieber noch ein paar Tage.
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.