5 迴圈控制
阿新 • • 發佈:2018-12-07
1 while 迴圈
語法
while 條件: 執行程式碼。。。
簡單吧, while
就是當的意思,當山峰沒有稜角的時候,當河水。。。,sorry , while
指 當其後面的條件 成立 ,就執行while
下面的程式碼
- 從0列印到100的程式,每迴圈一次,+1
#!/usr/bin/env python #$ coding:utf-8 $ #__Author__:Peter Du count = 0 while count <=100:print("loop",count) count += 1 print("----loop end----")
結果
count = 0 while count<= 100: if count % 2 ==0: print("loop",count) count += 1 print("----loop end----") #執行結果 loop 82 loop 84 loop 86 loop 88 loop 90 loop 92 loop 94 loop 96 loop 98 loop100 ----loop end----
#第50次不列印,第60-80列印對應值的平方 count = 0 while count <= 100: if count == 50: pass elif 60 <= count <= 80: print("loop",count**2) else: print("loop",count) count += 1 print("----loop end----") #執行結果 loop 46 loop 47 loop48 loop 49 loop 51 loop 52 loop 53 loop 54 loop 55 loop 56 loop 57 loop 58 loop 59 loop 3600 loop 3721 loop 3844 loop 3969 loop 4096 loop 4225
2 死迴圈:dead loop
有一種迴圈叫死迴圈,一經執行,就一直執行
while 是隻要後邊條件成立,(也就是條件結果為真)就一直執行,怎麼讓條件為真呢?
count = 0 while True: #True本身就是真呀 print("你是風兒我是沙,纏纏綿綿到天涯...",count) count +=1
3 迴圈終止語句
如果在迴圈過程中,因某些原因,不想迴圈,需用break 或者 continue 語句
- break 用於結束一個迴圈,跳出迴圈體執行迴圈後面的語句
- continue 和break 有點類似,區別在於continue 只是終止本次迴圈,接著還執行後面的迴圈,break 則完全終止迴圈
break 例子
count = 0 while count <= 100: print("loop",count) if count == 5: break count += 1 print("---out of while loop---") #執行結果 loop 0 loop 1 loop 2 loop 3 loop 4 loop 5 ---out of while loop---
continue 案例
count = 0
while count <= 100:
print("loop",count)
if count == 5:
continue
count += 1
print("---out of while loop---")
#執行結果
loop 0 loop 1 loop 2 loop 3 loop 4 loop 5 loop 5 loop 5 loop 5 loop 5 loop 5 # 一直迴圈下去 ...
continue 案例2
count = 0 while count <= 100: count += 1 if count > 5 and count <95: continue print("loop ",count) #執行結果 loop 1 loop 2 loop 3 loop 4 loop 5 loop 95 loop 96 loop 97 loop 98 loop 99 loop 100 loop 101 Process finished with exit code 0
3 猜年齡
練習1
age = 22 n=0 while n < 3: print("input you age") user_age = int(input()) if user_age < age: print("small") elif user_age > age: print("big") else: print("bingo") break n += 1 if n==3: choice = input("請問你還想繼續遊戲嗎?y|n") if choice=='y': n=0 else: break
#執行結果
input you age
10
small
input you age
30
big
input you age
22
bingo
Process finished with exit code 0
練習2
from random import randint num = randint(1,100) print("請輸入你的數字") bingo = False while bingo == False: user_num = int(input()) if user_num < num: print("small") elif user_num > num: print("big") else: print("bingo") bingo = True #執行結果 請輸入你的數字 10 small 50 big 30 small 40 big 35 bingo Process finished with exit code 0
4 while ...else 語法
與其它語言else 一般只與if 搭配不同,在Python 中還有個while ...else 語句
while 後面的else 作用是指,當while 迴圈正常執行完,中間沒有被break 中止的話,就會執行else後面的語句