解決したいこと
8桁の生年月日を入力して、現在の年齢を表示するプログラムを作っています。
数字を入力すれば年齢は表示されるのですが、8桁以外の数字を入力した際に、ValueErrorを送出して「8桁で入力してください」と画面に表示できるようにしたいです。
解決方法を教えて下さい。
発生している問題
文字数(8桁)を指定してそれ以外をエラーにする方法が分かりません。
len関数を使えばいいと思ったのですが、有効に使えず苦戦しています。
該当コード
python
1def eight(): 2 if len != 8: 3 raise ValueError 4 try: 5 birthday = int(input()) 6 except ValueError: 7 print('8桁で入力してください')
全体はこうです
python
1 2import datetime 3 4def age_now(): 5 time = str(datetime.date.today()) 6 print("生年月日を入力してください") 7 def eight(): 8 if len != 8: 9 raise ValueError 10 try: 11 birthday = int(input()) 12 except ValueError: 13 print('8桁で入力してください') 14 age = int(((20201015 - birthday) / 10000)) 15 print("現在の年齢は{}才です".format(age)) 16 17age_now()
最後に
len != 8 でそもそも「8桁でない。」と指定できているのかすら分からないです。
たぶんできてませんが。。。
分かる方、どうかよろしくお願いします。
あなたの回答
tips
プレビュー