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 小結 計算機有很強的邏輯判斷能力,但是這些邏輯建立在編寫程式的人明確告訴計算機判斷條件是什麼,...