這次練習在鞏固了if else條件語句,學習了assert斷言
對於迴圈語句內容較多,鞏固了while迴圈、for迴圈、break、continue、pass等,對range、enumerate、推導有了更深一步的掌握。
if 語句
if 語句的**塊只有當條件結果為真時才執行,否則將繼續執行緊跟在該**塊後面的語句。
單個 if 語句中的條件表示式可以通過布林操作符 and,or和not 實現多重條件判斷。
if - else 語句
if a:
執行belse:
執行cpython 提供與 if 搭配使用的 else,如果 if 語句的條件表示式結果布林值為假,那麼程式將執行 else 語句後的**。
if語句支援巢狀,即可在乙個if語句中嵌入另乙個if語句,多重巢狀。
if - elif - else 語句
if a:
執行belif c:
執行d…
elif e:
執行felse:
執行gelif 語句即為 else if,用來檢查多個表示式是否為真,並在為真時執行特定**塊中的**。
assertionerror
在進行單元測試時,可以用來在程式中置入檢查點,只有條件為 true 才能讓程式正常工作。
assert a > b
while 迴圈
while語句最基本的形式包括乙個位於頂部的布林表示式,乙個或多個屬於while**塊的縮排語句。
while 布林表示式:
**塊while迴圈的**塊會一直迴圈執行,直到布林表示式的值為布林假。
如果布林表示式不帶有<、>、==、!=、in、not in等運算子,僅僅給出數值之類的條件,也是可以的。當while後寫入乙個非零整數時,視為真值,執行迴圈體;寫入0時,視為假值,不執行迴圈體。也可以寫入str、list或任何序列,長度非零則視為真值,執行迴圈體;否則視為假值,不執行迴圈體。
while - else 迴圈
while 布林表示式:
**塊else:
**塊
當while迴圈正常執行完的情況下,執行else輸出,如果while迴圈中執行了跳出迴圈的語句,比如 break,將不執行else**塊的內容。
for 迴圈
for迴圈是迭代迴圈,在python中相當於乙個通用的序列迭代器,可以遍歷任何有序序列,如str、list、tuple等,也可以遍歷任何可迭代物件,如dict。
for 迭代變數 in 可迭代物件:
**塊
每次迴圈,迭代變數被設定為可迭代物件的當前元素,提供給**塊使用。
for - else 迴圈
for 迭代變數 in 可迭代物件:
**塊else:
**塊
當for迴圈正常執行完的情況下,執行else輸出,如果for迴圈中執行了跳出迴圈的語句,比如 break,將不執行else**塊的內容,與while - else語句一樣。
range() 函式
range([start,] stop[, step=1])
這個bif(built-in functions)有三個引數,其中用中括號括起來的兩個表示這兩個引數是可選的。
step=1 表示第三個引數的預設值是1。
range 這個bif的作用是生成乙個從start引數的值開始到stop引數的值結束的數字序列,該序列包含start的值但不包含stop的值。
enumerate()函式
enumerate(sequence, [start=0])
sequence – 乙個序列、迭代器或其他支援迭代物件。
start – 下標起始位置。
返回 enumerate(列舉) 物件
【例子】
seasons = ['spring', 'summer', 'fall', 'winter']
lst = list(enumerate(seasons))
print(lst)
# [(0, 'spring'), (1, 'summer'), (2, 'fall'), (3, 'winter')]
lst = list(enumerate(seasons, start=1)) # 下標從 1 開始
print(lst)
# [(1, 'spring'), (2, 'summer'), (3, 'fall'), (4, 'winter')]
enumerate()與 for 迴圈的結合使用
for i, a in enumerate(a)
do something with a
用 enumerate(a) 不僅返回了 a 中的元素,還順便給該元素乙個索引值 (預設從 0 開始)。此外,用 enumerate(a, j) 還可以確定索引起始值為 j。
break 語句
break語句可以跳出當前所在層的迴圈。
continue 語句
continue終止本輪迴圈並開始下一輪迴圈。
pass
pass語句的意思是「不做任何事」,如果你在需要有語句的地方不寫任何語句,那麼直譯器會提示出錯,而pass語句可解決這個問題。
def fun_a():
pass
推導式子
列表推導式
[ express for value in collection [if condition] ]
x=[-4,-2,0,2,4]
y=[a*2 for a in x]
print(y)
# [-8,-4,0,4,8]
元組推導式
(expr for value in collection [if condition])
a =
b=print(b)
#
集合推導式
c =
print(c)
#
day2 條件語句
目錄 一 條件語句 if if else if elif else assert 二 迴圈語句 while while else forfor else range enumerate 函式 break 語句 continue pass 推導式一 條件語句 1 if if expression ex...
Day 2 條件與迴圈
1 語句 if elif else 2 自上而下,滿足條件時執行對應的塊內語句,後續的elif和else都不再執行 3 語句結束有 4 使用 input 輸入,返回的資料型別為 str 必要時需轉換資料型別 if 條件判斷1 執行1 elif 條件判斷2 執行2 elif 條件判斷3 執行3 els...
DAY2 條件與迴圈
一.條件 關鍵字 if elif else python中用elif代替了else if 注意 1 每個條件後面要使用冒號 表示接下來是滿足條件後要執行的語句塊。2 使用縮排來劃分語句塊,相同縮排數的語句在一起組成乙個語句塊。3 在python中沒有switch case語句。二,迴圈 while迴...