7.用戶輸入和while循環
7.1函數input()的工作原理
函數input()接受一個參數:即要向用戶顯示的提示或說明,讓用戶知道該怎麼做。
input()函數使用時,python將用戶輸入解讀爲字符串,如果需要輸入數值,需要使用int()涵數。
處理信息時,他將兩個數相除並返回餘數:
4%3
1
求模運算符不會指出一個數是另一個數的多少倍,而只返回餘數是多少。所以可以用xxx%2判斷是否是even or odd
注意:python2.7中raw_input()和python3中的input()是一樣的。
7.2 while循環簡介
for循環用於針對集合中的每個元素的一個代碼塊,而while循環不斷的運行,直到指定的條件不滿足;
使用while循環:
break退出循環
continue:要返回到程序開頭,並根據條件測試jieg結果決定是否繼續執行循環。
避免無線循環
7.3使用while循環來處理lieb列表和字典
for循環是一種遍歷列表的有效方法,dans但是在for循環中不應該修改列表,否則導致python難以跟蹤其中的元素。
要在遍歷列表的同時duiq對其進行修改,可使用while訓話。通過將while循環tong同列表和字典結合起來使用,可收集,存儲並組織大量輸入,供以後查看並顯示。
7.3.1 在列表之間移動元素
使用pop()將一個列表中的元素,搬移到另外一個列表中;
7.3.2刪除包含特定值的所有lieb列表元素
remove()函數用來刪除列表中的特定值,可以結合while循環,
pets=['dog','cat','dog','goldfish','cat','rabit','cat']
print(pets)
while 'cat' in pets:
pets.remove('cat')
print('pets')
以上實現remove()和while循環使用;刪除cat;
7.3.3使用用戶輸入來填充字典
resposes={}
polling_active=True
while polling_active:
name=input("\nWhat is your name?")
response=input("Which mountain would you like to climb someday?")
responses[name]=response
repeat=input("Would you like to let another person respond?(yes/no)")
if repeat=='no':
polling_active=False
print("\n---poll result----")
for name,response in responses.item():
print(name+"would like to climb "+response+".")