今天我們來講迴圈。最近多了幾位粉絲,在此感謝你們的支援。同時也謝謝點讚的朋友們。
python有兩種迴圈模式,我們先講遍歷迴圈。
先看乙個案例:
for i in
range(1
,10):
print
(i,end =
'')
for 迴圈變數 in 遍歷結構:
語句塊大家肯定搞不明白:什麼叫遍歷???
遍歷結構可以是字串、檔案、range()函式或組合資料型別等。
遍歷迴圈可以理解為從遍歷結構中逐一提取元素,放在迴圈變數中,對於每個所提取的元素執行一次語句塊。for語句的迴圈執行次數是根據遍歷結構中元素個數確定的
range(a,b,c)
a是開始,預設為0。b是結束的(不算),c是步長,預設為1。比如:
for i in
range(1
,5):
#1,2,3,4
print
(i)print
(i)
我們來解析一下:
第一次迴圈,i被賦值為1,列印為1
第二次迴圈,i被賦值為2,列印為2
第三次迴圈,i被賦值為3,列印為3
第四次迴圈,i被賦值為4,列印為4
迴圈結束,最後列印i,i的值最後被賦值為4,因此列印4,所以所有的執行結果為:12
344為什麼換行?很簡單,我們沒加end = 『』,加了就行了。
我們再來個難一點的:
for i in
range(1
,5):
if i ==2:
print
('i是2,你中獎了!'
)else
:print
('i是{},你沒中獎。'
.format
(i))
這個我們再來分析分析:
第一次迴圈,i被賦值為1,i不為2,因此列印出:i是1,你沒中獎。
第二次迴圈,i被賦值為2,i為2,因此列印出:i是2,你中間獎了!
第三次迴圈,i被賦值為3,i不為2,因此列印出:i是3,你沒中獎。
第四次迴圈,i被賦值為4,i不為2,因此列印出:i是4,你沒中獎。
不難吧?現在我們來個好玩的:
for i in
range(1
,10):
for j in
range(1
,i+1):
print
('{}*{}={} '
.format
(i,j,i*j)
,end ='')
print(''
)
列印了什麼,乘法表對吧?自行分析一下吧!
現在我們來講講無限迴圈。
i =
0while
true
:print
(i) i +=
1
你的電腦卡了嗎?呵呵,沒錯,這就是無限迴圈,好了,現在停下程式,來看乾貨。
while 條件:
語句塊當程式執行到while語句時,判斷條件如果為true,執行語句塊,語句結束後返回再次判斷while語句的條件;當條件為false時,迴圈終止。繼續後續語句。
講到無限迴圈,那我們怎麼讓程式跳出無限迴圈且不手動停止程式呢?這裡就有兩個關鍵字:
break
continue
我們先用for語句試一試break
a =
'python'
for i in a:
if i ==
'h':
print
('\n你輸入的內容裡有h,h是違規字。'
)break
print
(i,end =
'')
我們再用試一試continue
a =
'python'
for i in a:
if i ==
'h':
print
('\n你輸入的內容裡有h,h是違規字。'
)continue
print
(i,end =
'')
這兩個有什麼區別呢?雖然結果不同,但是說明了什麼呢?
break用來跳出當前迴圈,脫離該迴圈後程式從迴圈後**繼續執行。
如果有2層或多層迴圈,break退出最內層迴圈。
continue用來結束當前當次迴圈,即跳出迴圈體中下面尚未執行的語句,但不跳出當前迴圈。
一頭霧水,對吧,那我們還是來分析分析程式:
第乙個用break的:
第一次迴圈,i為』p』,不為』h』,列印』p』
第二次迴圈,i為』y』,不為』h』,列印』y』
第三次迴圈,i為』t』,不為』h』,列印』t』
第四次迴圈,i為』h』,列印』你輸入的內容裡有h,h是違規字。'跳出內迴圈。
第二個用continue的:
第一次迴圈,i為』p』,不為』h』,列印』p』
第二次迴圈,i為』y』,不為』h』,列印』y』
第三次迴圈,i為』t』,不為』h』,列印』t』
第四次迴圈,i為』h』,列印』你輸入的內容裡有h,h是違規字。』,跳出本次迴圈
第五次迴圈,i為』o』,不為』h』,列印』o』
第六次迴圈,i為』n』,不為』h』,列印』n』
這下懂了吧。
然後現在講兩種擴充套件模式:
for 迴圈變數 in 遍歷結構:
語句塊1
else:
語句塊2
當for迴圈正常執行之後,程式會繼續執行else語句中內容。else語句只在迴圈正常執行之後才執行並結束,因此,可以在語句塊2中放置判斷迴圈執**況的語句。
while 條件:
語句塊1
else:
語句塊2
當while迴圈正常執行之後,程式會續執行else語句中內容。else語句只在迴圈正常執行後才執行,因此,可以在語句塊2中放置判斷迴圈執**況的語句。
Python迴圈語句 for迴圈
說明 1 計次迴圈,一般應用在迴圈次數已知的情況下。通常適用於列舉或遍歷序列以及迭代物件中的元素。2 迭代變數用於儲存讀取的值。3 物件為要遍歷或迭代的物件,該物件可以是任何有序的序列物件,如字串 列表 元組等 迴圈體為一組被重複執行的語句。4 for迴圈語句可以迴圈數值 遍歷字串 列表 元組 集合...
Python迴圈語句
while迴圈 1.一般語法 while 控制條件 執行語句 2.迴圈型別 無限迴圈 while true 執行語句 計數迴圈 count 0 while count 10 print count count 1 3.range 內建函式,返回乙個列表 range start,end,step 不包...
Python迴圈語句
python提供了for迴圈和while迴圈,但沒有do.while迴圈。while 判斷條件 執行語句 執行語句可以是單個語句或語句塊。判斷條件可以是任何表示式,任何非零 或非空 null 的值均為true 當判斷條件假false時,迴圈結束。判斷條件 還可以是個常值,表示迴圈必定成立,迴圈將會無...