python流程控制

2022-08-27 04:39:08 字數 3383 閱讀 8800

電腦程式在解決某個具體問題時,包括三種情形,即順序執行所有的語句、選擇執行部分的語句和迴圈執行部分語句,這正好對應著程式設計中的三種程式執行結構流程:順序結構、選擇結構和迴圈結構。

事實證明,任何乙個能用計算機解決的問題,只要應用這三種基本結構來寫出的程式都能解決。python語言當然也具有這三種基本結構。

一、選擇結構(if語句)

1、if語句的結構:

if 《條件1>:

《語句1>

elif 《條件2>:

《語句2>

else:

《語句3>

此時,條件1成立時執行語句1,;條件2成立時執行語句2;條件1和條件2都不成立時執行語句3。

例項:

x = int(input("

請輸入您的總分:"))

if x >= 90:

print('優'

)elif x>=80:

print('良'

)elif x >= 70:

print('中'

)elif x >= 60:

print('合格'

)else

:

print('

不合格')

需要注意的是:在使用多個elif語句的分支結構時,應把握好多個條件語句之間的關係。只要有乙個條件成立,就會將其後的語句執行,執行後退出整個if語句。

例項:

x = int(input("

請輸入您的總分:"))

if x >= 90:

print('優'

)elif x>=80:

print('良'

)elif x >= 60:

print('合格'

)elif x >= 70:

print('中'

)else

:

print('

不合格')

此時程式中的print('中')語句永遠不會執行,因為當輸入[70,80)這個區間的數時先判斷x>=60成立,則執行其後的語句並輸出合格,之後退出if語句。

2、三元運算子

if語句可以使用在乙個單語句中,實現三元運算子,基本形式:《表示式1> if 《條件》 else 《表示式2>

3、if語句的巢狀

if《條件》:

if《條件》:

《語句1>

elif《條件》:

《語句2>:

else:

《語句3>

編寫條件語句時,應該盡量避免使用巢狀語句。巢狀語句不便於閱讀,而且可能會忽略一些可能性。

二、for迴圈語句

1、for語句的結構:

python語言中的for語句與其他高階程式語言有很大的不同,其他高階語言for語句要用迴圈控制變數來控制迴圈。python中for語句是通過迴圈遍歷某一串行物件(字串、列表、元組等)來構建迴圈,迴圈結束的條件就是物件被遍歷完成。

for語句的形式如下:

for 《迴圈變數》 in 《迴圈物件》:

《語句1>

else:

《語句2>

else語句中的語句2只有迴圈正常退出(遍歷完所有遍歷物件中的值)時執行。

例項:

for num in range(10,20):

for i in range(2,num):

if num % i ==0:

j = num/i

print("

%d等於%d*%d

" %(num,i,j))

break

else

:

print("

%d是乙個質數

" % num)

2、range()函式

for語句的迴圈物件可以是列表、元組以及字串,可以通過range()函式產生乙個迭代值,以完成計數迴圈。

range( [start,]  stop [, step])

例項:

>>> for i in range(5):

print

(i) 01

234>>> for i in range(0,10,3):

print

(i) 03

69

for語句使用range()函式可以構建基於已知迴圈次數的迴圈程式,也可以以range()生成的數字作為索引來訪問列表、元組、字串中的值。

需要注意的是,range() 函式返回的物件表現為它是乙個列表,但事實上它並不是,range()函式並不是在呼叫時一次生成整個序列,而是遍歷一次才產生乙個值,以減少記憶體的占用,其本質是乙個迭代器。

如:

>>> range(10)

range(0, 10)

>>> type(range(10))

'range

'>

>>> list(range(10))

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

三、while迴圈語句    

for語句以遍歷物件的方式構造迴圈,有時卻需要構造一種類似無限迴圈的程式控制結構或某種不確定執行次數的迴圈,就需要使用while語句

1、while語句結構:

while語句的基本形式如下:

while《條件》:

《語句1>

else:

《語句2>

與for迴圈不同的是,while語句只有在測試條件為假時才會停止。

例項:

count =0

while count < 5:

print(count, "

is less than 5")

count = count + 1

else

:

print(count, "

is not less than 5

")

四、break語句、continue語句、pass語句

break語句用在while和for迴圈中,break語句用來終止迴圈語句,即迴圈條件沒有false條件或者序列還沒被完全遞迴完,也會停止執行迴圈語句。

continue語句用在while和for迴圈中,continue 語句用來告訴python跳過當前迴圈的剩餘語句,然後繼續進行下一輪迴圈。 continue 語句跳出本次迴圈,而break跳出整個迴圈。

python pass是空語句,是為了保持程式結構的完整性。pass 不做任何事情,一般用做佔位語句。

例項:

for i in range(10):

if i%2 ==0:

continue

print

(i)

if i>=7:

break

else

:

print("

迴圈結束")

1357

python流程控制 python之流程控制

電腦程式在解決某個具體問題時,包括三種情形,即順序執行所有的語句 選擇執行部分的語句和迴圈執行部分語句,這正好對應著程式設計中的三種程式執行結構流程 順序結構 選擇結構和迴圈結構。事實證明,任何乙個能用計算機解決的問題,只要應用這三種基本結構來寫出的程式都能解決。python語言當然也具有這三種基本...

Python流程控制語句流程控制語句

流程控制語句1 if語句 if 語句基本用法 if 表示式 語句塊其中,表示式可以是乙個單純的布林值或變數,也可以是比較表示式或邏輯表示式,如果表示式為真,則執行 語句塊 如果表示式的值為假,就跳 過 語句塊 繼續執行後面的語句。2 if else語句 if else 語句基本用法 if 表示式 語...

python 流程控制

coding utf 8 if判斷 任何非零數字或非空物件都為真 數字0,空物件以及特殊物件none都是false result 1 and 1 2 print result 三中布林表示式運算 and 與運算 or 或運算 not 非運算 cond1 1 cond2 1 2 if cond1 an...