Python for 迴圈

by yenchialu

不同於while需要計數進行迴圈,for迴圈主要是針對一個範圍裡的逐一項目進行迴圈。

什麼是一個範圍,以下是舉4個常見範例

  • str
  • range(0,1000)
  • list
  • tuple
  • set

for 迴圈的格式

# for 項目代稱 in 一個範圍 :
# for迴圈裡的內容就都是用項目代稱執行

for i in [1,2,3] :
    print (i)
#輸出結果
>>> 1
    2
    3

for迴圈不再侷限於數字,他可以對大部分的物件進行迴圈。

對字串進行迴圈

for word in "cat" :
    print (word)
#輸出結果
>>> c
    a
    t

對list 進行迴圈

for fruit in [apple,banana] :
    print (fruit)
>>> apple
    banana

對一個範圍做迴圈

#範圍range的用法
#range(3) -> 從0開始,到3停止,不包含3
#range(2,10) -> 從2開始,到10停止,不包含10

for i in range(5) :
    print (i)
for i in range(2,6) :
    print (i)
#輸出結果
# >>> 0
      1
      2
      3
# >>> 2
      3
      4
      5

Nested Loops 巢狀迴圈

迴圈裡包裹著一個迴圈

#製作一個長度為5的list,裡面每個項目都是另一個項目存有1~3的list

outside_list=[]

for i in range(5) : #外清單長度為5
    
    inside_list=[] 

    for j in range(3) : #內清單長度為3
        inside_list.append(j) 
 
    outside_list.append(inside_list) #外清單增加一個內清單後,會到下一輪迴圈重新開始 

print(outside_list)
#輸出結果
>>> [[0, 1, 2], [0, 1, 2], [0, 1, 2], [0, 1, 2], [0, 1, 2]]

情境設定 : 請安排 湘北、翔洋、海南、凌南 循環賽的賽程

All_teams = ["湘北","翔洋","海南","凌南"]
for A in All_teams :
    for B in All_teams :     
        if A == B: # 自己與自己跳過
            continue
        print (A,B)
#輸出結果
>>> 湘北 翔洋
    湘北 海南
    湘北 凌南
    翔洋 湘北
    翔洋 海南
    翔洋 凌南
    海南 湘北
    海南 翔洋
    海南 凌南 
    凌南 湘北
    凌南 翔洋
    凌南 海南

其他特殊用法

Pass

for迴圈不能沒內容,如果由於特殊原因須有一個沒有內容的循環,請放入pass語句以避免出錯。

for i in range(5) :
    pass

Break 跳出迴圈

設定特殊條件,條件符合時跳出迴圈。

#遇到3的倍數就跳出迴圈

for i in range(1,7) :
    if i%3 ==0 :
        print(i,"You jump, I jump.")
        break
    print (i)
>>> 1
    2
    3 You jump, I jump.

Continue 跳過此輪迴圈

#跳過3的倍數

for i in range(1,7) :
    print (i)
    if i%3 ==0 : 
        print ("這個數字被我神隱了") 
>>> 1
    2
    3
    這個數字被我神隱了
    4
    5
    6
    這個數字被我神隱了

Python 入門學習系列文章

  1. PYTHON 基本語法
  2. PYTHON 資料型態(概念介紹篇)
  3. PYTHON 資料型態(數字篇)
  4. PYTHON 資料型態(字串篇)
  5. PYTHON 資料型態(LIST)
  6. PYTHON 資料型態(DICT)
  7. PYTHON 資料型態(BOOLEANS)
  8. PYTHON 條件判斷算式(IF,ELIF,ELSE)
  9. PYTHON WHILE 迴圈
  10. PYTHON FOR 迴圈
  11. PYTHON DEF 函式
  12. PYTHON MODULES 模組

You may also like

Leave a Comment