ハードコードされた日付がある場合、それをユーザーが指定した日付と比較するにはどうすればよいですか?
最終的には、人の誕生日を比較して、年齢を確認したいと思います。誰かが私を正しい方向に向けることができますか?
ハードコードされた日付がある場合、それをユーザーが指定した日付と比較するにはどうすればよいですか?
最終的には、人の誕生日を比較して、年齢を確認したいと思います。誰かが私を正しい方向に向けることができますか?
Pythonの標準ライブラリdatetime
モジュールを使用して、「ユーザーが指定した日付」を解析してdatetime.date
インスタンスに変換し、それを現在の日付から減算する必要がありますdatetime.date.today()
。例えば:
>>> birthdate_str = raw_input('Enter your birthday (yyyy-mm-dd): ')
Enter your birthday (yyyy-mm-dd): 1981-08-04
>>> birthdatetime = datetime.datetime.strptime(birthdate_str, '%Y-%m-%d')
>>> birthdate = birthdatetime.date() # convert from datetime to just date
>>> age = datetime.date.today() - birthdate
>>> age
datetime.timedelta(11397)
age
はdatetime.timedelta
インスタンスであり、11397は日数です(から直接入手できますage.days
)。
彼らの年齢を年数で取得するには、次のようなことを行うことができます。
>>> int(age.days / 365.24)
31