1. 程式人生 > >讀書筆記「Python程式設計:從入門到實踐」_7.使用者輸入和while迴圈

讀書筆記「Python程式設計:從入門到實踐」_7.使用者輸入和while迴圈

7.1 函式input()的工作原理

  函式input() 讓程式暫停執行,等待使用者輸入一些文字。獲取使用者輸入後,Python將其儲存在一個變數中,以方便你使用。  

message = input("Tell me something, and I will repeat it back to you: ")
print(message)
Tell me something, and I will repeat it back to you: hello world
hello world

7.1.1 編寫清晰的程式

  通過在提示末尾(這裡是冒號後面)包含一個空格,可將提示與使用者輸入分開,讓使用者清楚地知道其輸入始於何處

  有時候,提示可能超過一行,例如,你可能需要指出獲取特定輸入的原因。在這種情況下,可將提示儲存在一個變數中,再將該變數傳遞給函式input() 。

prompt = "If you tell us who you are, we can personalize the messages you see."
prompt += "\nWhat is your first name? "
name = input(prompt)
print("\nHello, " + name + "!")
If you tell us who you are, we can personalize the messages you see.
What is your first name? chang

Hello, chang!

7.1.2 使用int()來獲取數值輸入

  函式int() 將數字的字串表示轉換為數值表示

7.1.3 求模運算子

  求模運算子 (%)是一個很有用的工具,它將兩個數相除並返回餘數

number = input("請輸入一個數字,我將告訴您這個是奇數還是偶數: ")
number = int(number)
if number%2 == 0:
    print("您輸入的是偶數")
else:
    print("您輸入的是奇數")
請輸入一個數字,我將告訴您這個是奇數還是偶數: 123
您輸入的是奇數

7.1.4 在Python 2.7中獲取輸入

  如果你使用的是Python 2.7,應使用函式raw_input() 來提示使用者輸入。這個函式與Python 3中的input() 一樣,也將輸入解讀為字串。

  Python 2.7也包含函式input() ,但它將使用者輸入解讀為Python程式碼,並嘗試執行它們。因此,最好的結果是出現錯誤,指出Python不明白輸入的程式碼;而最糟的結果是,將執行你原本無意執行的程式碼。

  如果你使用的是Python 2.7,請使用raw_input() 而不是input() 來獲取輸入。

7.2 while迴圈簡介
7.2.1 使用while迴圈
7.2.2 讓使用者選擇何時退出

  中定義了一個退出值,只要使用者輸入的不是這個值,程式就接著執行
7.2.3 使用標誌

  定義一個變數,用於判斷整個程式是否處於活動狀態。這個變數被稱為標誌
7.2.4 使用break退出迴圈

  要立即退出while 迴圈,不再執行迴圈中餘下的程式碼,也不管條件測試的結果如何,可使用break 語句。
7.2.5 在迴圈中使用continue

  continue 語句,讓Python忽略餘下的程式碼,並返回到迴圈的開頭。

7.2.6 避免無限迴圈

active = True
while active:
    message = input("請輸入你的姓名:")
    if message == "quit":
        break
    elif message == "continue":
        continue
    else:
        print("你好," + message)
請輸入你的姓名:chang
你好,chang
請輸入你的姓名:continue
請輸入你的姓名:li
你好,li
請輸入你的姓名:quit

Process finished with exit code 0

7.3 使用while迴圈來處理列表和字典

  for 迴圈是一種遍歷列表的有效方式,但在for 迴圈中不應修改列表,否則將導致Python難以跟蹤其中的元素。要在遍歷列表的同時對其進行修改,可使用while 迴圈。

  通過將while 迴圈同列表和字典結合起來使用,可收集、儲存並組織大量輸入,供以後檢視和顯示。

7.3.1 在列表之間移動元素

  

7.3.2 刪除包含特定值的所有列表元素
7.3.3 使用使用者輸入來填充字典