Seite 1 von 1

Datum eingeben, danach wird automatisch 'n' Tage addieren

Verfasst: Sonntag 10. Februar 2008, 10:52
von baumanns
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

Re: Datum eingeben, danach wird automatisch 'n' Tage addiere

Verfasst: Sonntag 10. Februar 2008, 12:08
von gerold
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.
Hallo baumanns!

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'
>>> 
mfg
Gerold
:-)

Re: Datum eingeben, danach wird automatisch 'n' Tage addiere

Verfasst: Sonntag 10. Februar 2008, 12:28
von baumanns
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'
>>> 

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'
>>> 
mfg
Gerold
:-)
Danke 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

Verfasst: Sonntag 10. Februar 2008, 12:28
von Leonidas
Naja, schau dir doch mal das Modul ``datetime`` und dort neben ``datetime`` auch noch ``timedelta`` an, das sollte alle deine Fragen beantworten.

Re: Datum eingeben, danach wird automatisch 'n' Tage addiere

Verfasst: Sonntag 10. Februar 2008, 13:05
von gerold
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() ?
Hallo baumanns!

Das sind genau die Dinge, die in jedem Pythonbuch beschrieben werden. Vielleicht wartest du mit deinen Fragen lieber noch ein paar Tage. :wink:

mfg
Gerold
:-)

Re: Datum eingeben, danach wird automatisch 'n' Tage addiere

Verfasst: Sonntag 10. Februar 2008, 13:47
von baumanns
gerold hat geschrieben:Vielleicht wartest du mit deinen Fragen lieber noch ein paar Tage. :wink:
Ja, wohl kein schlechter Tipp. :)

Danke soweit.

baumanns