Python猜年齡
阿新 • • 發佈:2017-12-03
pre == () bre 超過 年齡 rip python 字符串
題目:Python實現猜年齡
步驟一:實現最簡單的猜年齡
# 事先定義 dark_knight_age = 28 user_age = input(‘Please guess my age:‘) user_age = int(user_age) # 將用戶輸入的內容強轉為整型 # 因為input接收的值都是字符串, # 字符串不能與整型進行比較,所以要強轉為整型 # 判斷 if user_age == dark_knight_age: # 當用戶輸入的年齡與事先定義的年齡相等時。 print(‘You got it!‘) elif user_age > dark_knight_age:# 當用戶輸入的年齡比事先定義的年齡要大時。 print(‘Try smaller‘) else: print(‘Try bigger‘) # 當用戶輸入的年齡比事先定義的年齡要小時。
步驟二:實現循環猜年齡
# 事先定義 dark_knight_age = 28 while True: user_age = input(‘Please guess my age:‘) user_age = int(user_age) # 將用戶輸入的內容強轉為整型 # 因為input接收的值都是字符串, # 字符串不能與整型進行比較,所以要強轉為整型 # 判斷 if user_age == dark_knight_age: # 當用戶輸入的年齡與事先定義的年齡相等時。 print(‘You got it!‘) break elif user_age > dark_knight_age:# 當用戶輸入的年齡比事先定義的年齡要大時。 print(‘Try smaller‘) else: print(‘Try bigger‘) # 當用戶輸入的年齡比事先定義的年齡要小時。
步驟三:解決程序中出現的BUG
1、去除用戶輸入的字符串左右兩邊的空格
2、解決用戶輸入的值為空
3、解決用戶輸入的值為其它字符串
# 事先定義 dark_knight_age = 28 while True: user_age = input(‘Please guess my age:‘).strip() # 去除字符串兩邊的空格 # 當用戶輸入的內容為數字字符串時 if user_age.isdigit(): user_age = int(user_age) # 將用戶輸入的數字字符串轉換為整型後再進行以下判斷 # 判斷 if user_age == dark_knight_age: # 當用戶輸入的年齡與事先定義的年齡相等時,退出循環。 print(‘You got it!‘) break elif user_age > dark_knight_age:# 當用戶輸入的年齡比事先定義的年齡要大時。 print(‘Try smaller‘) else: print(‘Try bigger‘) # 當用戶輸入的年齡比事先定義的年齡要小時。 # 當用戶輸入的內容為其它內容或None時,讓其重新輸入。 else: print(‘Please try again!‘)
步驟四:擴展猜年齡
1、當用戶猜年齡的猜錯次數超過3次時退出程序。
2、每猜錯一次便告之用戶還有幾次機會。
3、當用戶輸入為空時,不限次數讓用戶繼續輸入。
# 事先定義 count = 1 dark_knight_age = 28 while True: if count == 4: # 用戶在猜錯情況下的次數超過了3次退出循環。 print(‘Too many times‘) break user_age = input(‘Please guess my age:‘).strip() # 去除字符串兩邊的空格 # 當用戶輸入的值不為空時。 if user_age: if user_age.isdigit(): # 當用戶輸入的內容為數字字符串時 user_age = int(user_age) # 將用戶輸入的數字字符串轉換為整型後再進行以下判斷 # 判斷 if user_age == dark_knight_age: # 當用戶輸入的年齡與事先定義的年齡相等時,退出循環。 print(‘You got it!‘) break else: if user_age > dark_knight_age:# 當用戶輸入的年齡比事先定義的年齡要大時。 print(‘Try smaller‘) elif user_age < dark_knight_age: print(‘Try bigger‘) # 當用戶輸入的年齡比事先定義的年齡要小時。 print(‘You have %s chance‘ % (3 - count)) # 告訴還有幾次機會。 # 當用戶輸入的內容為其它內容或None時,讓其重新輸入。 else: print(‘Please try again!‘) print(‘You have %s chance‘ % (3 - count)) # 告訴還有幾次機會。 # 當用戶輸入的值為空時 else: print(‘You enter blank, please re-enter!‘) continue # 此時跳出本次循環,繼續執行以下循環 count += 1 # 每次循環都次數都進行加1操作
Python猜年齡