Python基礎之語句(條件、迴圈)
一、概述
本博文主要描述python語言的條件語句、迴圈語句、迴圈語句的巢狀、break語句、continue語句、pass語句的語法以及注意事項。本博文的章節也會按照以上幾個部分進行講解。
二、python條件語句
Python條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的程式碼塊。
可以通過下圖來簡單瞭解條件語句的執行過程:
Python程式語言指定任何非0和非空(null)值為true,0 或者 null為false。
Python 程式設計中 if 語句用於控制程式的執行,基本形式為:
if判斷條件:執行語句……else:執行語句……
其中"判斷條件"成立時(非零),則執行後面的語句,而執行內容可以多行,以縮排來區分表示同一範圍。
else 為可選語句,當需要在條件不成立時執行內容則可以執行相關語句,
if 語句的判斷條件可以用>(大於)、<(小於)、==(等於)、>=(大於等於)、<=(小於等於)來表示其關係。
當判斷條件為多個值時,可以使用以下形式:
if判斷條件1:執行語句1……elif判斷條件2:執行語句2……elif判斷條件3:執行語句3……else:執行語句4……
當if有多個條件時可使用括號來區分判斷的先後順序,括號中的判斷優先執行,此外 and 和 or 的優先順序低於>(大於)、<(小於)等判斷符號,即大於和小於在沒有括號的情況下會比與或要優先判斷。
三、python迴圈語句
程式語言提供了各種控制結構,允許更復雜的執行路徑。
迴圈語句允許我們執行一個語句或語句組多次,下面是在大多數程式語言中的迴圈語句的一般形式:
Python提供了for迴圈和while迴圈(在Python中沒有do..while迴圈):
迴圈型別 | 描述 |
---|---|
while 迴圈 | 在給定的判斷條件為 true 時執行迴圈體,否則退出迴圈體。 |
for 迴圈 | 重複執行語句 |
巢狀迴圈 | 你可以在while迴圈體中巢狀for迴圈 |
迴圈控制語句
迴圈控制語句可以更改語句執行的順序。Python支援以下迴圈控制語句:
控制語句 | 描述 |
---|---|
break 語句 | 在語句塊執行過程中終止迴圈,並且跳出整個迴圈 |
continue 語句 | 在語句塊執行過程中終止當前迴圈,跳出該次迴圈,執行下一次迴圈。 |
pass 語句 | pass是空語句,是為了保持程式結構的完整性。 |
Python 程式設計中 while 語句用於迴圈執行程式,即在某條件下,迴圈執行某段程式,以處理需要重複處理的相同任務。其基本形式為:
while判斷條件:執行語句……
執行語句可以是單個語句或語句塊。判斷條件可以是任何表示式,任何非零、或非空(null)的值均為true。
當判斷條件假false時,迴圈結束
while 語句時還有另外兩個重要的命令 continue,break 來跳過迴圈,continue 用於跳過該次迴圈,break 則是用於退出迴圈,此外"判斷條件"還可以是個常值,表示迴圈必定成立,迴圈使用 else 語句
在 python 中,while … else 在迴圈條件為 false 時執行 else 語句塊:
例項
#!/usr/bin/pythoncount = 0whilecount < 5: printcount, " is less than 5"count = count + 1else: printcount, " is not less than 5"以上例項輸出結果為:
0is less than 51is less than 52is less than 53is less than 54is less than 55isnot less than 5
簡單語句組
類似 if 語句的語法,如果你的 while 迴圈體中只有一條語句,你可以將該語句與while寫在同一行中
Python for迴圈可以遍歷任何序列的專案,如一個列表或者一個字串。
語法:
for迴圈的語法格式如下:
for iterating_var in sequence: statements(s)
流程圖:
通過序列索引迭代
另外一種執行迴圈的遍歷方式是通過索引,如下例項:
例項
#!/usr/bin/python# -*- coding: UTF-8 -*-fruits = ['banana', 'apple', 'mango']forindexinrange(len(fruits)): print'當前水果 :', fruits[index]print"Good bye!"以上例項輸出結果:
當前水果: banana
當前水果: apple
當前水果: mango
Good bye!
以上例項我們使用了內建函式 len() 和 range(),函式 len() 返回列表的長度,即元素的個數。 range返回一個序列的數。
迴圈使用 else 語句
在 python 中,for … else 表示這樣的意思,for 中的語句和普通的沒有區別,else 中的語句會在迴圈正常執行完(即 for 不是通過 break 跳出而中斷的)的情況下執行,while … else 也是一樣。
例項
#!/usr/bin/python# -*- coding: UTF-8 -*-fornuminrange(10,20): # 迭代 10 到 20 之間的數字 foriinrange(2,num): # 根據因子迭代ifnum%i == 0: # 確定第一個因子j=num/i# 計算第二個因子print'%d 等於 %d * %d' % (num,i,j)break# 跳出當前迴圈else: # 迴圈的 else 部分printnum, '是一個質數'嘗試一下 »
以上例項輸出結果:
10等於2*511是一個質數12等於2*613是一個質數14等於2*715等於3*516等於2*817是一個質數18等於2*919是一個質數
四、python迴圈語句巢狀
Python 語言允許在一個迴圈體裡面嵌入另一個迴圈。
五、python break語句
Python break語句,就像在C語言中,打破了最小封閉for或while迴圈。
break語句用來終止迴圈語句,即迴圈條件沒有False條件或者序列還沒被完全遞迴完,也會停止執行迴圈語句。
break語句用在while和for迴圈中。
如果您使用巢狀迴圈,break語句將停止執行最深層的迴圈,並開始執行下一行程式碼。
六、python continue語句
Python continue 語句跳出本次迴圈,而break跳出整個迴圈。
continue 語句用來告訴Python跳過當前迴圈的剩餘語句,然後繼續進行下一輪迴圈。
continue語句用在while和for迴圈中。
七、python pass語句
Python pass是空語句,是為了保持程式結構的完整性。
pass 不做任何事情,一般用做佔位語句。
Python 語言 pass 語句語法格式如下:
pass
例項:
#!/usr/bin/python# -*- coding: UTF-8 -*- # 輸出 Python 的每個字母for letter in'Python':if letter =='h':passprint'這是 pass 塊'print'當前字母 :', letter
print"Good bye!"
以上例項執行結果:
當前字母: P
當前字母: y
當前字母: t
這是pass塊當前字母: h
當前字母: o
當前字母: n
Good bye!