1. 程式人生 > 實用技巧 >Python學習筆記3:條件控制/迴圈語句

Python學習筆記3:條件控制/迴圈語句

1.條件控制
條件語句其實就是通過一條或多條語句的執行結果是True還是False來決定執行後面的程式碼塊。
if語句

if condition_1:
    statement_block_1
elif condition_2:
    statement_block_2
else:
    statement_block_3

注意:
1、每個條件後面要使用冒號:,表示接下來是滿足條件後要執行的語句塊。
2、使用縮排來劃分語句塊,相同縮排數的語句在一起組成一個語句塊。
3、在Python中沒有switch – case語句。

if巢狀語句

if condition_1:
    statement_block_1
    
    if condition_t1:
        statement_block_t1
    elif condition_t2:
        statement_block_t2
    else:
        statement_block_t3
elif condition_2:
    statement_block_2
else:
    statement_block_3

2.迴圈語句
Python中的迴圈語句主要有 for 和 while。

while迴圈

while(condition):
    (statements)

同樣需要注意冒號和縮排。另外,在Python中是沒有do..while迴圈的。

while迴圈使用else語句
在while條件語句(condition)為false時執行else的語句塊。

while(condition):
    (statements)
else:
    (additional_statement)
>>> n=8
>>> while n<5:
	print('n<5')
    else:
	print('n>5')

n>5
>>> 

for語句
Python for迴圈可以遍歷任何序列的專案,如一個列表或者一個字串。

for <variable> in <sequence>:
    <statements>
else:
    <statements>
>>> names=['susan', 'lily', 'lilei']
>>> for name in names:
	print(name)

susan
lily
lilei
>>> 

for......else......的執行順序為:
當迭代物件完成所有迭代後且此時的迭代物件為空時,如果存在else子句則執行else子句,沒有則繼續執行後續程式碼;
如果迭代物件因為某種原因(如帶有break關鍵字)提前退出迭代,則else子句不會被執行,程式將會直接跳過else子句繼續執行後續程式碼

>>> for x in range(6):
	if x==2:
		print(x)
		break
else:
	print('print else...')

2

>>> for x in range(6):
	if x==2:
		print(x)
		#break
else:
	print('print else...')

2
print else...
>>> 

break/continue語句
break語句是用來終止迴圈的,即迴圈條件沒有False條件或者序列還沒被完全遞迴完,也會停止執行迴圈語句。
如果是使用巢狀迴圈,break語句只會停止執行它所在的那個迴圈,對於它外一層的迴圈不影響。
continue語句是用來跳過當前迴圈的剩餘語句,然後繼續進行下一輪迴圈。

>>> for x in range(1,9):
	print(x)
	if x==5:
		break #列印到5後停止迴圈

1
2
3
4
5
>>> 
>>> for x in range(1,9):
	if x==5:
		continue #跳過列印5,繼續執行後面的迴圈
	print(x)

1
2
3
4
6
7
8
>>> 

range()函式
說完for就不得不提range()函數了,range()函式用於生產隨機數。

range(stop): 0~stop-1
range(start,stop): start~stop-1
range(start,stop,step): start~stop step(步長,可以是負數)