[程式]Python: For 迴圈 , while 迴圈, Range, 強制結束 break, 強制回頭 continue 語法規則

對於某些程式碼想要進行重複操作時,就可以用迴圈。

For 迴圈:有次序性(按照可疊代物件的次序去執行)、並且知道它的執行次數(有幾個元素就執行幾次)。

while 迴圈:無次序性、或是未知執行次數(本來不知道要跑幾次,不過一定會有終止的條件、只有判斷式,條件是false時就會離開)

  1. 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

但是型態有差異

查找型態:

  1. 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就直接會全部終止了