result = 0
range 可以產生一個可迭代的物件 range(起始, 結束, [間隔]) 。注意不含結束,舉例來說 range(1, 11) 從 1 開始不含 11。間隔為每個數字的間隔。若為 range(1, 11, 2) 則為 1, 3, 5, 7, 9,若無指定則預設為 1 ,亦可為負數
for number in range(1, 11):
print(number)
result += number
print('result:', result)
1
2
3
4
5
6
7
8
9
10
result: 55
for 迴圈取出 list 元素
初始化一個 list 串列
languages = ['C', 'Python', 'Java']
從 languages 取出的元素 item 可以自行定義變數名稱
for item in languages:
print(item)
C
Python
Java
若是我們除了元素外,還希望同時取出對應的 index 索引值的話(還記得 list 的 index 索引是從 0 開始嗎?),可以使用 enumerate() 這個對應的函式:
for 索引, 元素 in enumerate(串列物件):
執行區塊
範例程式:
# 初始化一個 list 串列
languages = ['C', 'Python', 'Java']
# 從 languages 取出的元素 index 和 value 可以自行定義變數名稱
for index, value in enumerate(languages):
print(index, value)
執行結果:
# 元素 index 從 0 開始
0 C
1 Python
2 Java
for 迴圈取出 dict 元素
dict 字典也是 Python 非常常使用的容器物件,可以透過 key:value 鍵值格式存放多種不同資料型別的物件。
我們可以使用 for 迴圈取出 dict 的 key:
or 鍵 in 字典物件:
執行區塊
範例程式:
# 宣告一個產品 dict 存產品名稱和售價
products = {
'ASUS手機': 3490,
'iPhone20': 50000,
'三星手機': 12000,
'小麥手機': 2000
}
# 使用 for 迴圈會取出 dict key 值,key 也可以改成其他變數名稱
for key in products:
print(key)
執行結果:
ASUS手機
iPhone20
三星手機
小麥手機
若希望同時取出鍵值的話可以使用 dict.items() 內建方法取出對應 鍵, 值
for 鍵, 值 in 字典物件.items():
執行區塊
範例程式:
# 宣告一個產品 dict 存產品名稱和售價
products = {
'ASUS手機': 3490,
'iPhone20': 50000,
'三星手機': 12000,
'小麥手機': 2000
}
# 使用 for 迴圈會取出 dict key, value 值,key, value 也可以改成其他變數名稱
# dict.items() 會產生 dict items (key, value) 透過 for 迴圈取出:dict_items([('ASUS手機', 3490), ('iPhone20', 50000), ('三星手機', 12000), ('小麥手機', 2000)])
for key, value in products.items():
print(key, value)
執行結果:
ASUS手機 3490
iPhone20 50000
三星手機 12000
小麥手機 2000
break 使用方式
Python 也具有 break 和 continue 兩個負責跳出迴圈的關鍵字功能。同樣地,break 代表的是跳出整個迴圈,而 continue 則是跳過這次迴圈後執行下一次迴圈,可以搭配迴圈使用,但要注意 while 更新條件,避免變成無窮迴圈。
break 範例程式:
result = 0
# range 可以產生一個可迭代的物件 range(起始, 結束, [間隔]) 。注意不含結束,舉例來說 range(1, 11) 從 1 開始不含 11。間隔為每個數字的間隔。若為 range(1, 11, 2) 則為 1, 3, 5, 7, 9,若無指定則預設為 1 ,亦可為負數
for number in range(1, 11):
# 遇到 5 跳出迴圈
if number == 5:
break
print(number)
result += number
print('result:', result)
執行結果:
1
2
3
4
result: 10
continue 使用方式
continue 範例程式:
result = 0
# range 可以產生一個可迭代的物件 range(起始, 結束, [間隔]) 。注意不含結束,舉例來說 range(1, 11) 從 1 開始不含 11。間隔為每個數字的間隔。若為 range(1, 11, 2) 則為 1, 3, 5, 7, 9,若無指定則預設為 1 ,亦可為負數
for number in range(1, 11):
# 遇到 5 跳過這次迴圈直接執行下一次
if number == 5:
continue
print(number)
result += number
print('result:', result)
執行結果:
1
2
3
4
6
7
8
9
10
result: 50