python的流程控制語句包括:if條件語句、while迴圈語句、for迴圈語句、range函式以及break、continue、pass控制語句。這些語句在python中的語義和在其他語言中是一樣的,所以這裡就只說它們的寫法。
if語句是最常用的條件控制語句,python中的一般形式為:
if 條件一:
statements
elif 條件二:
statements
else:
statements
python中用elif
代替了else if
,所以if語句的關鍵字為:if - elif - else。
例項:
#!/usr/bin/python3
var1 = 100
if var1:
print ("1 - if 表示式條件為 true")
print (var1)
var2 = 0
if var2:
print ("2 - if 表示式條件為 true")
print (var2)
print ("good bye!")
執行以上**,輸出結果為:
1 - if 表示式條件為 true
100good bye!
注意:
1、每個條件後面要使用冒號(:),表示接下來是滿足條件後要執行的語句塊。
2、使用縮排來劃分語句塊,相同縮排數的語句在一起組成乙個語句塊。
3、在python中沒有switch - case語句。
python中while語句的一般形式:
while 判斷條件:
statements
同樣需要注意冒號和縮排。另外,在python中沒有do..while迴圈。
例項:
#!/usr/bin/env python3
n = 100
sum = 0
counter = 1
while counter <= n:
sum = sum + counter
counter += 1
print("1 到 %d 之和為: %d" % (n,sum))
執行以上**,輸出結果為:
1 到 100 之和為: 5050
python中的for語句與c語言中的for語句有點不同:c語言中的for語句允許使用者自定義迭代步驟和終止條件;而python的for語句可以遍歷任何序列(sequence),按照元素在序列中的出現順序依次迭代。一般形式為:
for variable in sequence:
statements
else:
statements
例項:
print("菜鳥教程!")
break
print("迴圈資料 " + site)
else:
print("沒有迴圈資料!")
print("完成迴圈!")
執行指令碼後,在迴圈到 "runoob"時會跳出迴圈體:
迴圈資料 baidu
迴圈資料 google
菜鳥教程!
完成迴圈!
如果你要遍歷乙個數字序列,那麼內建的range()函式就可以派上用場了。函式range()常用於for迴圈中,用於產生乙個算術數列:
>>> list(range(10)) # 預設從0開始
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> list(range(1, 11)) # 從1到11,前閉後開
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> list(range(0, 30, 5)) # 5表示步長,每隔5取乙個數
[0, 5, 10, 15, 20, 25]
breakbreak語句與c語言中的一樣,跳出最近的for或while迴圈。
continue
continue語句同樣是從 c 語言借用的, 它終止當前迭代而進行迴圈的
下一次迭代。
pass
pass語句什麼都不做,它只在語法上需要一條語句但程式不需要任何操作時使用。pass語句是為了保持程式結構的完整性。
例項:
#!/usr/bin/python3
for letter in 'runoob':
if letter == 'o':
pass
print ('執行 pass 塊')
print ('當前字母 :', letter)
print ("good bye!")
執行以上指令碼輸出結果為:
當前字母 : r
當前字母 : u
當前字母 : n
執行 pass 塊
當前字母 : o
執行 pass 塊
當前字母 : o
當前字母 : b
good bye!
else子句在迴圈語句中還可以使用else子句
,else子句在序列遍歷結束(for語句)或迴圈條件為假(while語句)時執行,但迴圈被break終止時不執行。
例項:
#!/usr/bin/python3
for n in range(2, 10):
for x in range(2, n):
if n % x == 0:
print(n, '等於', x, '*', n//x)
break
else:
# 迴圈中沒有找到元素
print(n, ' 是質數')
執行以上指令碼輸出結果為:
2 是質數
3 是質數
4 等於 2 * 2
5 是質數
6 等於 2 * 3
7 是質數
8 等於 2 * 4
9 等於 3 * 3
Python3自學筆記5 條件判斷與迴圈
時間2016.10.20 摘錄自 廖雪峰python3.5教程 內容 條件判斷與迴圈 一 if的使用 if 條件1 執行1elif 條件2 執行2else 執行3只要條件為非0數值 非空字串 非空list等就判定滿足條件。注 python中如何注釋,對於單行注釋用 對於多行注釋 與 或者 與 之間的...
3 條件 迴圈
usr bin perl w use feature qw say 列印內容自動換行,不用手動加 n my var ifif var if else if var else if elsif 注意是elsif,不是elif,sv中也是elsif if var 10 elsif var 5 else ...
Python 學習筆記3(條件 迴圈)
1 條件判斷 這個和c語言有點類似,看下面 age 20if age 18 print your age is age print adult 你發現了什麼,if後面有個冒號,而且如果age小於18你猜結果會是怎樣,如果是c語言那麼肯定會輸出 adult 而py不會輸出 說明py的 執行和縮排有關 ...