本章將學習使用者的輸入以及While迴圈的一些基礎方式方法
-
input()等待使用者的輸入
該函式會讓程式暫停執行,等待使用者輸入後盡享下一步操作,我們可以將使用者輸入的資訊存入到一個變數中messge=input("Input something:") print(message) #-->Input somthing:Hello World #Hello World是你自己輸入的 #-->Hello World
當我們寫出這個函式時,必須讓使用者知道他應該輸入什麼,否則亂輸入根本沒有效果
messge=input("Input yourname:") print(message) #-->Input your name:小白龍馬 #-->小白龍馬 message="你是誰,讓我們知道知道我們可以給您介紹一款適合您玩的遊戲哦!!! " message+="請輸入您的名字:" name=input(message) print(name) #-->你是誰,讓我們知道知道我們可以給您介紹一款適合您玩的遊戲哦!!! #-->請輸入您的名字:小白龍馬 #-->小白龍馬
以上都是一個個字元,我們向輸入數字怎麼辦呢?
age=input("Input your age:") print(age) age=int(age) age += 5 print(age) #-->Input your age:20 #-->`20`#這是未轉化之前的 #-->25#值產生了變化,說明可以進行數值運算了
注意:
在py2.7中,我們最好用raw_input()這個函式獲取輸入的字串,當讓py2.7中也有input(),但是他不是獲取輸入的字元,而是把輸入的東西當作程式碼執行。 -
While迴圈簡介
簡單示例:current_number=1 while current_number<=5: print(current_number) current_number += 1 #-->1 2 3 4 5 #會輸出一到5
表明:while迴圈的條件是 current_number<=5,當這個表示式不滿足是就退出迴圈,因此我們需要在迴圈體中改變這個值,在特定的時退出
(1)讓使用者選擇退出message="您將進入迴圈!!!" print(message) while True: command=input("輸入一個字串(輸入quit退出)") if command == `quit`: break;#退出當前迴圈的命令 print(`您已退出迴圈`) #-->您將進入迴圈!!! #-->輸入一個字串(輸入quit退出)dasd #-->輸入一個字串(輸入quit退出)quit #-->您已退出迴圈 #改進版 message="您將進入迴圈!!!" print(message) command=`` while command!=`quit`: command=input("輸入一個字串(輸入quit退出)") if command == `quit`: break;#退出當前迴圈的命令 print(`您已退出迴圈`) #迴圈輸入命令,當命令不為quit是就繼續迴圈
同時,我們可以設定一個標誌,動態的控制迴圈的進行: ```python active=True while active: command=input("輸入一個字串(輸入quit退出)") if command == `quit`: active=False; ```
(2)break與continue
break是停止迴圈,跳出迴圈,而continue是停止本次迴圈,開始下一次迴圈#break message="您將進入迴圈!!!" print(message) command=`` while command!=`quit`: command=input("輸入一個字串(輸入quit退出)") if command == `quit`: break;#退出當前迴圈的命令 print(`您已退出迴圈`) #-->您將進入迴圈!!! #-->輸入一個字串(輸入quit退出)dasd #-->輸入一個字串(輸入quit退出)quit #-->您已退出迴圈 #continue: message="您將進入迴圈!!!" print(message) command=`` while command!=`quit`: command=input("輸入一個字串(輸入quit退出)") if command == `quit`: break;#退出當前迴圈的命令 if command == `cont`: continue;#退出當前迴圈的命令 print(`哈哈`) print(`您已退出迴圈`) #-->您將進入迴圈!!! #-->輸入一個字串(輸入quit退出)aa #-->哈哈 #-->輸入一個字串(輸入quit退出)cont #-->輸入一個字串(輸入quit退出)quit #-->您已退出迴圈
(3)避免無限迴圈:
無限迴圈例項: ```python while True: print(`哈哈,會卡死的`) ``` 這就是一個無限迴圈,迴圈體無法跳出,會一直執行,最後可能會程式無響應
-
結合列表與字典迴圈
(1)刪除包含特定值的列表元素:pets=[`cats`,`dogs`,`dogs`,`fish`] while `dogs` in pets: pets.remove(`dogs`) print(pets) #-->[`cats`,`fish`] 刪除了特定元素
```python responses={} active=True while active: name=input(`please input your name:`) response=input(`please says something:`) responses[name]=response repeat=input(`you want to give us some word?(y/n)`) if repeat == `n`: active=False print(`over`) #-->please input your name:safsa #-->please says something:fsafasf #-->you want to give us some word?(y/n)y #-->please input your name:sfsafag #-->please says something:sfasfafdgdsgsg #-->you want to give us some word?(y/n)n #-->sfasfafdgdsgsg #這裡輸出了迴圈體中最後的response變數的值(這裡會有全域性變數和區域性變數的區別,我得先去理解理解。) ```