【PY從0到1】第六節 使用者輸入while迴圈
阿新 • • 發佈:2020-12-24
# 6 第六節 使用者輸入while迴圈 # 1> 重要的函式——input() # 我們先講解一下input():當Python碰到input()後會執行括號內的語句。 # 隨後等待使用者的輸入。輸入後將資訊儲存在變數中,繼續執行語句。 # 舉個例子。 message = input('Where are you form? : ') print(message) # Python列印Where are you form?等待使用者輸入。然後將值以字串的形式賦給message。 # 執行結果如下: # Where are you form? : China # China <-----列印message的結果# 利用input()可以實現很多有意思的功能,如下。 name = input('Please enter your name:' ) print('Hello, ' + name + '! ') # 輸出結果如下: # Please enter your name:ss # Hello, ss! # 前面提到賦值型別是字串,那我們想得到數值型的賦值怎麼做呢?要用int() age = input('How old are you? ') age = int(age) print(age >= 18) # 這樣就將字串變成了數值。執行結果如下。 # How old are you? 17# False # 這裡補充一個運算子(%),它是相除取餘符。 a = 4 % 3 b = 4 % 2 print(a) print(b) # 結果為 # 1 # 0 # 2> While 迴圈 # 直接舉例子。 member = 1 while member < 5: print("yeah!yeah!yeah!") member = member + 1 # 列印的結果如下: # yeah!yeah!yeah! # yeah!yeah!yeah! # yeah!yeah!yeah! # yeah!yeah!yeah! # 當member小於5時就列印yeah!yeah!yeah!# 講到這裡,有讀者可能會想if-else、for、while有什麼區別呢?這裡也解答一下 # if-else是滿足一個條件就執行對應的程式碼,其他程式碼不予理會。(不迴圈,是判斷語句) # for是針對集合中每個元素的,它讓每個元素賭執行下方程式碼。(完全的迴圈語句) # while是當滿足條件時,不斷執行下方的程式碼,一旦不滿足條件就停止。(判斷加迴圈語句) # 3> while與input()的結合 pro = '恭喜你成功過關,回覆e進入下一關,同時可以回覆q以退出。' pro1 = '現在進入下一關' message = 'e' while message != 'q': message = input(pro) if message == 'e': print(pro1) else: print('謝謝遊玩。') # input()+while就可以實現詢問玩家是否繼續遊戲的功能。 # 4> 標誌 # 要重視這個小技巧 # 當程式過於複雜時,這個技巧可以讓程式看起來更為整潔。 # 下面對上個例子做點小改進。 pro = '恭喜你成功過關,回覆e進入下一關,同時可以回覆q以退出。' pro1 = '現在進入下一關' pro2 = '謝謝遊玩。' sign = True #不是字串 while sign: message = input(pro) if message == 'e': print(pro1) else: print(pro2) sign = False # 輸出結果與前面的程式碼一致,程式的邏輯變得更情清晰。 # 5>終止迴圈——Break # break語句可以直接停止進行中的while迴圈 pro = '恭喜你成功過關,回覆e進入下一關,同時可以回覆q以退出。' pro1 = '現在進入下一關' pro2 = '謝謝遊玩。' sign = True #不是字串 while sign: message = input(pro) if message == 'e': print(pro1) break else: print(pro2) sign = False # 加上break後,如果在詢問時輸入e,程式只會彈出‘現在進入下一關’。 # 程式碼執行結果如下: # 恭喜你成功過關,回覆e進入下一關,同時可以回覆q以退出。e # 現在進入下一關 # 如果輸入q,結果如下: # 謝謝遊玩。 # 注:在Python的任何迴圈中都能使用break來終止迴圈。如,for、while # 6> 打斷下面的程式碼,直接進入下一輪迴圈——contiune # 下面我們引進contiune,這個程式的作用是隻列印偶數, number = 0 while number < 10: number += 1 if number % 2 != 0: continue else: print(number) # 輸出結果如下: # 2 # 4 # 6 # 8 # 10 # 7> 讓元素在列表中移動 # for只用於遍歷列表,一般用while修改列表,不用for修改列表。 # 下面舉例: A = ['a','b','c'] B = [] while A : C = A.pop() B.append(C) print(B) # 輸出結果為: # ['c', 'b', 'a'] # 8> 刪除列表中包含特定值的所有元素 # 如果列表中,有多個相同的元素想刪除,我們可以借用while # 舉例如下: A = ['a','b','b','b','b','c'] # 刪除A列表中的全部‘b’ while 'b' in A : A.remove('b') print(A) # 結果如下: # ['a', 'c'] # 9> 用input()填充字典 # 舉例如下: dictionary = {} sign = True while sign : name = input('您叫什麼名字?' + '(按q可退出)') if name == 'q': sign = False print('謝謝參與') break age = input('您今年多大?' + '(按q可退出)') if age == 'q': sign = False print('謝謝參與') dictionary[name] = age print(dictionary) # 執行結果如下: # 您叫什麼名字?(按q可退出)心心 # 您今年多大?(按q可退出)21 # 您叫什麼名字?(按q可退出)小元 # 您今年多大?(按q可退出)23 # 您叫什麼名字?(按q可退出)q # 謝謝參與 # {'心心': '21', '小元': '23'} # 課程到這裡,Python最基礎的語句基本講解完畢。隨後就是對於函式和類的介紹。