Python 學習 6 分支和迴圈結構

2021-10-02 02:25:20 字數 2118 閱讀 1671

if語句

python中的if語句和其他程式語言中的結構相同,由三部分組成:

單個if語句可以使用and、or、not實現多重條件的判斷。

若執行的**塊僅有一行,則可以與if語句放在一行。

else語句

和其他語言一樣,python也提供了與if配套使用的else語句。

要注意的是,python使用縮排而不是花括號來標記**的邊界。使用縮排可以讓程式設計師自己決定else屬於哪乙個if,增加**的準確性和易讀性。

elif(else-if)語句

elif是python中的else-if語句,可以檢查多個表示式是否為真,if語句最多只能有乙個else,但可以有多個elif。

條件表示式

與c/c++不同,python中並沒有三目運算子,取而代之的是x if c else y

k=3x=

3if(k>5)

else

2print

(x)

while語句

while語句是乙個條件迴圈語句,與if相比,if在為真後將執行一次,而while將一直迴圈直到條件不為真。

要注意while會產生無限迴圈的情況,通常無限迴圈會造成大量記憶體使用而導致程式癱瘓,但是在某些情況例如伺服器就是通過無限迴圈來等待客戶端的連線,客戶端向伺服器傳送請求,伺服器處理請求,python網路基礎將在後面章節討論。

for語句

for迴圈會訪問乙個可迭代的物件中的所有元素,並在所有條目都處理過後結束迴圈.

range()函式:

break語句

break語句可以結束當前迴圈然後跳至下一條語句,與c/c++中的bireak沒有區別。

continue語句

程式遇到continue語句時,將會終止當前迴圈,並忽略剩餘語句,回到迴圈頂端,繼續下一次條件判斷。

pass語句

與c/c++不同,python中還提供了pass語句。python中沒有使用傳統的大括號來標記**塊,有時,有些地方在語法上要求要有**來表示不做任何事,例如,在python中如果寫了if expression但不寫冒號後的**,就會報錯,此時就需要用pass。

迭代器和iter()函式

迭代器為類序列物件提供了乙個類序列的介面,迭代器對列表和字典的迭代帶來效能上的增強。

根本上說,迭代器就是有乙個next()方法的物件,而不是通過索引來計數。當你或是乙個迴圈機制需要下乙個項時,呼叫迭代器的next()方法就可以獲得它。

迭代器也有一些限制:例如不能向後移動、不能回到開始也不能複製乙個迭代器。

迭代器的使用:

mytuple=(1

,123

,'abc'

,3.3)i=

iter

(mytuple)

#建立迭代器

print

(i.__next__())

#python3在這裡用_next_()函式替代next()

print

(i.__next__(

))

在使用迭代器的時候,應當盡量避免修改容器,例如在迴圈時刪除元素。

列表解析

列表解析來自函式式程式語言haskell,在之前的章節有提到過,基本語法是:

[expr for iter_var in iterable]

這個語句的核心是for迴圈,它迭代iterable物件的所有條目,前邊的expr應用於序列的每個成員,最後結果值時該表示式產生的列表。

例如:[x**2 for x in range(6)] -> [0,1,4,9,16,25]

列表解析的擴充套件版本:

[expr for iter_var in iterable if cond_expr]

例如:[x for x in seq if x%2]

生成器表示式

生成器表示式是列表解析的乙個擴充套件,列表解析的乙個不足就是必要生成所有的資料,用以建立整個列表,這可能對大量資料的迭代器有負面效應,例如磁碟檔案。生成器表示式的語法與列表解析基本相同,不過它並不真正建立乙個列表,而是返回乙個生成器(generator)。生成器使用括號代替方括號。

下一章將對python的函式思想以及函式式程式設計進行講解。第七章

Python學習記錄(三)分支和迴圈

第三課 改進遊戲 條件分支 改進 猜錯的時候提示大了還是小了。等於 不等於 其他比較運算子也和c語言相同 if 條件 見第一課 temp input 猜數字 guess int temp if guess 8 print 猜對了!else if guess 8 print 大了 else print...

bilibiliclass6 分支與迴圈

c語言是一中結構化的語句 世界上的結構只有三種 順序,選擇,迴圈 c語言表示真假 0為假,其他為真 迴圈if情況 wrong else懸空問題,else之和最近的未匹配的if匹配 wrong 乙個等號是賦值,兩個等號是判斷相等,建議常量放左邊5 num因為少打乙個 會報錯 判斷你輸入的乙個數是不是奇...

python學習筆記03 分支 迴圈語句

目錄 1 分支語句 2 注釋語句 3 迴圈語句 3.1 for 迴圈與 range語句 3.2 while語句 3.3 迴圈退出語句 4 示例 4.1 累加計算 4.2 階乘計算 4.3 模擬登入功能 5 小結 計算機有很強的邏輯判斷能力,但是這些邏輯建立在編寫程式的人明確告訴計算機判斷條件是什麼,...