函數input()讓程序暫停運行,等待用戶輸入一些文本。獲取用戶輸入後,Python將其存儲在一個變量中。
注意:Sublime Text不能運行提示用戶輸入的程序。
#使用input( )時指定清晰而易於明白的提示
name = input("Please enter your name: ")
sex = input("Please enter your sex: ")
age = input("Please enter your age: ") #Python將用戶輸入解讀為字符串
print("Hello, " + name + "!")
if age[:1] == '8':
print("You are an " + age + " " + sex + ".")
else:
print("You are a " + age + " " + sex + ".")
使用函數 input() 時,Python 將用戶輸入解讀為字符串。用於數值比較時可使用函數 int(),將輸入的字符串轉換為數值。
age = input("How old are you? ")
age = int(age)
age >= 18 #輸入的age與18比較
求模運算符(%)將兩個數相除並返回余數
for 循環用於針對集合中的每個元素都一個代碼塊,而 while 循環不斷地運行,直到指定的條件不滿足為止。
num = 1 #用while 循環來數數
while num < 5: #條件不滿足退出
print(num)
num += 1
prompt = "Write something, Enter 'quit' to end the program!"
message = ""
while message != 'quit': #定義一個退出值,只要用戶輸入的不是這個值,程序就接著運行
message = input(prompt)
if message != 'quit':
print(message)
可定義一個變量用於判斷整個程序是否處於活動狀態,這個變量被稱為標志,充當了程序的交通信號燈。
你可讓程序在標志為 True 時繼續運行,並在任何事件導致標志的值為 False 時讓程序停止運行。這樣,在 while 語句中就只需檢查一個條件——標志的當前值是否為 True ,並將所有測試都放在其他地方,從而讓程序變得更為整潔。
prompt = "Write something, Enter 'quit' to end the program!"
flag = True
while flag: #flag標志
message = input(prompt)
if message == 'quit':
flag = False
else:
print(message)
要立即退出 while 循環,不再運行循環中余下的代碼,也不管條件測試的結果如何,可使用 break 語句。break 語句用於控制程序流程。
prompt = "Write something, Enter 'quit' to end the program!"
while True:
message = input(prompt)
if message == 'quit':
break
else:
print(message)
要返回到循環開頭,並根據條件測試結果決定是否繼續執行循環,可使用 continue 語句,它不像 break 語句那樣不再執行余下的代碼並退出整個循環。
num = 1
while num < 10:
num += 1
if num % 2 == 1: #num為奇數則繼續,為偶數則打印出來
continue
print(num)
for 循環是一種遍歷列表的有效方式,但在 for 循環中不應修改列表,否則將導致 Python 難以跟蹤其中的元素。要在遍歷列表的同時對其進行修改,可使用 while 循環。通過將 while 循環同列表和字典結合起來使用,可收集、存儲並組織大量輸入,供以後查看和顯示。
(1)在列表之間移動元素
user_0 = ['alice','brain','candace'] #創建用戶列表
user_1 = [] #創建空列表
while user_0:
user = user_0.pop()
user_1.append(user)
for i in user_1: #顯示列表user_1
print(i.title())
(2)刪除包含特定值的所有列表元素
pets = ['dog', 'cat', 'goldfish', 'cat', 'rabbit', 'cat']
while 'cat' in pets:
pets.remove('cat')
print(pets)
(3)使用用戶輸入來填充字典
zidian = {
} #空字典
flag = True
while flag:
name = input("Please enter your name: ")
city = input("Please enter your city: ")
zidian[name] = city
repeat = input("Would you like to input again? (yes/ no)")
if repeat == 'no':
flag = False
print("\n====RESULT====") #顯示結果
for key,value in zidian.items():
print(key + "----" + value)