對於某些程式碼想要進行重複操作時,就可以用迴圈。
For 迴圈:有次序性(按照可疊代物件的次序去執行)、並且知道它的執行次數(有幾個元素就執行幾次)。
while 迴圈:無次序性、或是未知執行次數(本來不知道要跑幾次,不過一定會有終止的條件、只有判斷式,條件是false時就會離開)
- for each in ‘0123′:
print(each)
2) for each in (0,1,2,3):
print(each)
3)
for each in [0,1,2,3]:
print(each)
4) for each in {0:’a’, 1:’b’, 2:’c’,3:’d’}:
print(each)
—->會print key出來
如果要print value可以使用for each in D1.values(): 這樣子的寫法
把兩個值分別取出來,(這時候型態是tuple)
for each in D1.items():
print (each[0], each[1])
也可以寫
for key,value in D1.items():
print (key,value)
5)
for each in set((0,1,2,3)):
print(each)
summary
雖然說print出來都是:
0
1
2
3
但是型態有差異
查找型態:
- for each in ‘0123′:
print(type(each), each)
range((起始),終止,(遞增)), ex: list(range(10))
range example:
list (range (10)) —->[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
list(range(9,-1,-1)) —-> [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
list(range(10,-1,-2)) —->[10, 8, 6, 4, 2, 0]
list(range(-10,1,2)) —–>[-10, -8, -6, -4, -2, 0]
強制結束 break
只要跑到這個,就會直接中斷
強制回頭continue
只要跑到這個,就會直接回頭跑到for迴圈的一開始
例如
for each in range(10):
if each%2==1:
continue
print(each)
相當於只要跑到奇數時,就會重頭再跑然後到下一個
—->1不印,2印出來,3不印,4印出來
如果是break的話,跑到1就直接會全部終止了