我想弄清楚我的任務,但我努力努力。如何限制用戶輸入到一個整數範圍 - python 3.6
所以我需要的是將變量'age'的用戶輸入限制爲等於或大於18.如果輸入是字符串或小於18,我想顯示自己的錯誤消息並終止程序。
此外,我已經注意到,當輸入字母時,程序會自動顯示ValueError,因爲我已將int()用於輸入。但是我想把這個錯誤信息改成我自己的。我讀了某處調用並檢查值,然後int()他們,所以我嘗試了輸入()本身,但不認爲它的工作。
這裏是我現在的年齡部分:
age = int(input('Enter age'))
if not age.isdigit():
sys.stderr.write('Please enter appropriate age')
sys.exit(1)
elif age < 18:
print('You have to be at least 18 years old')
sys.exit(1)
else:
age = int(age)
我試圖做類似設定的條件爲它退出,那麼對於其他的條件下,它會繼續下去...... ....但我不知道,如果其他人可以使用,如果不能去,我不認爲它的工作:(
任何幫助表示讚賞!
一個Python的方式來實現,這是使用 - [見這裏](https://docs.python.org/3/tutorial/errors .html#handling-exceptions),這個鏈接甚至有你幾乎確切的例子! – xjcl
@aryamccarthy,但是這不會讓我顯示我的錯誤消息時使用str作爲輸入!它只會顯示我的錯誤消息,如果年齡小於18,並顯示ValueError是否使用其他字符:( – yeonsy
這是一個很容易檢查添加。 –