Lab 4
台大語言所
陳品而
Python Basics (ii)
ㄒ
1 2 3
什麼是迴圈?
迴圈
▶️ 一種控制結構,允許多次執行相同code
▶️ 針對不同對象處理重複任務
ㄒ
1 2 3
迴圈
ㄒ
1 2 3
迴圈
ㄒ
1 2 3
有哪些迴圈?
迴圈
ㄒ
1 2 3
while 迴圈
while
ㄒ
1 2 3
count = 0
while count < 5:
count += 1
print(count)
while
執行code
滿足特定條件
ㄒ
1 2 3
while count < 5:
count += 1
print(count)
while
count 最初是 0
看 while count <5
→ 通過條件 (因為 0<5)
→ count 再加 1
→ print 出來
→ 跑完第一圈,count 最終變成 1
輸出:1
ㄒ
1 2 3
while
跑完第一圈後,count 變成 1
輸出:2
再次看 while count <5
→ 通過 (因為1<5)
→ count 再加 1
→ print 出來
→ 跑完第2圈,count 最終變成 2
while count < 5:
count += 1
print(count)
ㄒ
1 2 3
while
跑完第二圈後,count 變成 2
輸出:3
while count < 5:
count += 1
print(count)
再次看 while count <5
→ 通過 (因為2<5)
→ count 再加 1
→ print 出來
→ 跑完第3圈,count 最終變成 3
ㄒ
1 2 3
while
跑完第三圈,count 變成 3
再次看 while count <5
→ 通過 (因為3<5)
→ count 再加 1
→ print 出來
→ 跑完第4圈,count 最終變成 4
輸出:4
while count < 5:
count += 1
print(count)
ㄒ
1 2 3
while
跑完第四圈,count 變成 4
再次看 while count <5
→ 通過 (因為4<5)
→ count 再加 1
→ print 出來
→ 跑完第5圈,count 最終變成 5
輸出:5
while count < 5:
count += 1
print(count)
ㄒ
1 2 3
while count < 5:
count += 1
print(count)
while
跑完第五圈後,count 變成 5
再次看 while count <5
→ 不通過 (因為 5 不小於 5)
→ 不執行裡面的code
ㄒ
1 2 3
while count < 5:
count += 1
print(count)
while
總計輸出:
1
2
3
4
5
ㄒ
1 2 3
while 迴圈
讓條件最後會變 False,否則會無限迴圈
while
(a = a+2)
ㄒ
1 2 3
for 迴圈
for
ㄒ
1 2 3
for
ㄒ
1 2 3
fruits = ["蘋果", "香蕉", "柳丁"]
for fruit in fruits:
print(fruit)
for
輸出:
蘋果
香蕉
柳丁
蘋果
香蕉
柳丁
ㄒ
1 2 3
fruits = ["蘋果", "香蕉", "柳丁"]
for fruit in fruits:
print(fruit)
for
完整遍歷列表 (fruits) 一次就結束迴圈
ㄒ
1 2 3
break:在特定條件下,立即結束迴圈
for
當 fruit 是香蕉時,
停止迴圈
ㄒ
1 2 3
continue
當某一次迴圈遇到 continue
就忽略那一次迴圈(剩下的)code
直接開始下一次迴圈
for
ㄒ
1 2 3
pass
不執行任何操作,當作佔位符
for
ㄒ
1 2 3
pass
for
ㄒ
1 2 3
ㄒ
1 2 3
巢狀迴圈
▶️ 一個迴圈內部包含另一個迴圈
▶️ 處理多維數據結構
for
ㄒ
1 2 3
for
ㄒ
1 2 3
range()
for
ㄒ
1 2 3
ㄒ
1 2 3
range(start, stop, step)
for
range(0, 5) 是 [0, 1, 2, 3, 4]
ㄒ
1 2 3
range(5) 等於 range(0, 5)
ㄒ
1 2 3
range(start, stop, step)
for
ㄒ
1 2 3
ㄒ
1 2 3
for i in range(3):
print(i)
for
ㄒ
1 2 3
range(0, 3)
ㄒ
1 2 3
for i in range(3):
print(i)
for
輸出:
0
1
2
ㄒ
1 2 3
ㄒ
1 2 3
for i in range(3):
print(i)
for
for id in [0, 1, 2]:
print(id)
ㄒ
1 2 3
ㄒ
1 2 3
for i in range(3):
print(i)
for
for id in [0, 1, 2]:
print(id)
ㄒ
1 2 3
輸出:
0
1
2
輸出:
0
1
2
ㄒ
1 2 3
for i in range(3):
print(i)
for
for id in [0, 1, 2]:
print(id)
ㄒ
1 2 3
一個 list 中,
元素們的索引也是 0 開始!
ㄒ
1 2 3
for
ㄒ
1 2 3
▶️ range(3) 產生 iterator: range(0,3) 可以遍歷 [0, 1, 2]
▶️ ['a', 'b', 'c'] 對應的索引是 [0, 1, 2]
他們可以 iterate 一樣的東西🐶
ㄒ
1 2 3
Python
ㄒ
1 2 3