1.while循環語句基本結構?
while condition: loop body
2.利用while語句寫出猜大小的游戲:
設定一個理想數字比如:66,讓用戶輸入數字,如果比66大,則顯示猜測的結果大了;如果比66小,則顯示猜測的結果小了;只有等於66,顯示猜測結果正確,然后退出循環。
while True: num = int(input(">>>")) if num < 66: print("小了") elif num > 66: print("大了") else: print("正確") break
<運行結果>
>>>10
小了
>>>20
小了
>>>30
小了
>>>67
大了
>>>66
3.在2題的基礎上進行升級:
給用戶三次猜測機會,如果三次之內猜測對了,則顯示猜測正確,退出循環,如果三次之內沒有猜測正確,則自動退出循環,並顯示‘太笨了你....’。
tag = 0 while True: num = int(input(">>>")) if num < 66: print("小了") tag += 1 elif num > 66: print("大了") tag +=1 else: print("正確") break if tag == 3: print("太笨了你") break
<運行結果>
>>>10
小了
>>>20
小了
>>>66
正確
>>>10
小了
>>>50
小了
>>>70
大了
太笨了你
4.使用while循環輸出 1 2 3 4 5 6 8 9 10
while True: num = 0 while True: num += 1 if num == 7: continue elif num < 11: print(num) else: break
<運行結果>
1
2
3
4
5
6
8
9
10
1
…
5.求1-100的所有數的和
sum = 0 num = 1 while True: sum += num num += 1 if num == 101: break print('1-100的所有數的和是:%s'%sum)
<運行結果>
1-100的所有數的和是:5050
6.輸出 1-100 內的所有奇數
num = 0 while True: num += 1 if num != 100: if num % 2 == 0: continue else: print(num) else: break
<運行結果>
1
3
5
7
…
7.輸出 1-100 內的所有偶數
num = 0 while True: num += 1 if num != 100: if num % 2 != 0: continue else: print(num) else: print(100) break
<運行結果>
2
4
6
8
…
8.求1-2+3-4+5 ... 99的所有數的和
num = 0 sum = 0 while True: num += 1 if num != 100: if num % 2 == 0: sum -= num else: sum += num else: print("1-2+3-4+5 ... 99的所有數的和:%s"%sum) break
<運行結果>
1-2+3-4+5 ... 99的所有數的和:50
9.⽤戶登陸(三次輸錯機會)且每次輸錯誤時顯示剩余錯誤次數(提示:使⽤字符串格式化)
username="孫亞偉" password="20181228" cnt = 2 while True: Name = input("name?") Pass = input("password?") if Name == username and Pass == password: print("Welcome!") break elif cnt == 0: print("嘗試錯誤次數過多") break else: print("錯誤剩余次數是:%s"%(cnt)) cnt -=1
<運行結果>
name?張三
password?123
錯誤剩余次數是:2
name?李四
password?123
錯誤剩余次數是:1
name?王五
password?123
嘗試錯誤次數過多
---------------------------------------------------------------------
name?孫亞偉
password?123
錯誤剩余次數是:2
name?孫亞偉
password?20181228
Welcome!