不間斷 Python 挑戰 Day 6 - 基本 for 迴圈

2021/12/10閱讀時間約 3 分鐘
當我們需要重複一系列有規則的行為,例如從1加到100,或是取得物件裡面的每一個元素,例如將串列裡面的每個元素印出,重複地撰寫程式碼顯然不切實際,for迴圈便是可以讓程式對可迭代物件(iterable object)執行迭代(iteration)的工具。

for 迴圈基本語法

for迴圈的基本語法如下:
for item in object:
  Do something to each item
以前面熟悉的串列來說,假如要將cities串列裡面的所有元素印出,在這之前只能一行一行寫print:
cities = ["台北", "桃園", "新竹", "台中", "台南"]
print(cities[0])
print(cities[1])
print(cities[2])
print(cities[3])
print(cities[4])
利用for迴圈,相同的工作,現在只要兩行程式碼就能解決,當串列內的元素愈來愈多後,for迴圈的優勢便更會顯現出來。
for city in cities:
print(city)
執行結果:
台北
桃園
新竹
台中
台南

range() 函數

range()函數的目的是產生一個等差級數數列的可迭代物件,它在for迴圈的計數中很常被用到,它的語法如下:
range(start, stop[, step])
  • start:數列的起始數字,若沒有輸入則預設為0。
  • stop:數列到此數字之前必須停止,亦即不包含stop。
  • step:數列的間隔,若沒有輸入則預設為1。
由上可知,range()函數可以有三種用法:
  • 傳入一個參數
for number in range(5):
print(number, end=" ")
執行結果:
0 1 2 3 4
  • 傳入兩個參數
for number in range(6, 11):
print(number, end=" ")
執行結果:
6 7 8 9 10
  • 傳入三個參數
for number in range(0, 11, 2):
print(number, end=" ")
執行結果:
0 2 4 6 8 10
因此,若要從1加到100,也不用那麼辛苦從1+2+3+...一直寫到一百,只要幾行程式就能解決。
sum = 0
for number in range(1, 101):
sum += number
print(sum)
執行結果
5050

程式範例

為什麼會看到廣告
Wei-Jie Weng
Wei-Jie Weng
留言0
查看全部
發表第一個留言支持創作者!