2017-08-17 10 views
-2

私のプロジェクトは、ユーザーに生年月日を入力させすぎて、生きていた日数、年齢、誕生日までの日数、平日の曜日などを出力します。うまれた。Python日時モジュール

私はそれらをすべてやっていましたが、次の誕生日までの日数が来ると、次の誕生日に入力する必要があります。代わりに元の入力を使用する必要があります新しいものの

次の誕生日を入力する必要がないように、どうすれば入手できますか?

誕生日年齢にユーザーの年齢を追加すると、次の誕生日を入力せずに日数を与えることができます。しかし、私はそれにそれをどのように追加するか分からない。私は年に1〜14の数値を追加できますが、変数は追加できません。

next_birthday = birthday.replace(year=birthday.year+ 14) 

import datetime 
from datetime import date 

birthday=input("When is your birthday ['yyyy-mm-dd' format] : ") 
birthday=datetime.datetime.strptime(birthday,"%Y-%m-%d").date() 
today = datetime.date.today() 
age = (today - birthday) 

print("You are " + str(age.days) + " days old") 

days = (age.days) 
years = days/365 

print("Or " + str(years) + " years old") 

weekday = date.weekday(birthday) 
days= ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"] 
print ("You were born on the day number %d" % weekday) 
print ("Which was a " + days[weekday]) 


birthdate=input("When is your next Birthday ['yyyy-mm-dd' format] : ") 
birthdate=datetime.datetime.strptime(birthdate,"%Y-%m-%d").date() 
while birthdate == today: 
    print ("Happy Birthday") 
    break 
else: 
    import datetime 
    today = datetime.date.today() 

    daystill = (birthdate- today).days 
    print (daystill, "Days untill your Birthday") 

答えて

2

ちょうど1年に1を追加します。

birthday = datetime.datetime.strptime('2000-01-01', "%Y-%m-%d").date()

next_birthday = birthday.replace(year=age.year+1)

+0

私はこれを行う場合、プログラムはすぐ隣の誕生日それまでは日の負の数を出力します。 –

+0

これは1歳の誕生日を祝うもので、次のものはありません – PRMoureu

+0

良い点..私はそれを修正しました – bphi

関連する問題