今天我們要學(xué)習(xí)的是Python中的for循環(huán),for循環(huán)常用于遍歷字符串、列表、元組、字典、集合等數(shù)據(jù)類型。
for循環(huán)中的語(yǔ)法
for 迭代變量 in 字符串|列表|元組|字典|集合:
代碼塊
其中迭代變量是自定義命名的,用于存放從序列類型中讀取出來(lái)的元素,而代碼塊則是指具有相同縮進(jìn)格式的多行代碼。
我們來(lái)看一個(gè)小例子:
上述圖片中,我們定義了一個(gè)字符串類型的變量course,變量賦值為"python"。然后我們使用for循環(huán)遍歷了這個(gè)變量。迭代變量i先后被賦值為p、y、t、h、o、n,并代入循環(huán)體中運(yùn)行。
使用for進(jìn)行數(shù)值循環(huán)
使用for循環(huán)實(shí)現(xiàn)1到100之間的數(shù)字累加:
上述圖片中,我們使用到了range()函數(shù),這是一個(gè)Python中的內(nèi)置函數(shù),創(chuàng)建一個(gè)整數(shù)列表,一般用在 for 循環(huán)中。
range()函數(shù)的語(yǔ)法格式:
range(start, stop[, step])
start:用于指計(jì)數(shù)的起始值,默認(rèn)為從0開始。
stop:用于指計(jì)數(shù)的結(jié)束值,但不包括stop本身,例如range(1,5)表示1、2、3、4,不包括5本身。相當(dāng)于左便是閉區(qū)間,右邊是開區(qū)間。
step:用于指步長(zhǎng),即兩個(gè)數(shù)之間的間隔,默認(rèn)步長(zhǎng)為1。
如果range()函數(shù)中,只有一個(gè)參數(shù),則這個(gè)參數(shù)指的是stop,如果有兩個(gè)參數(shù),則指的是start 和 end。
循環(huán)使用 else 語(yǔ)句
在Python中,for循環(huán)可以與else一起使用,組成for...else
循環(huán),else 中的語(yǔ)句會(huì)在循環(huán)正常執(zhí)行完之后執(zhí)行。
像上圖中的for循環(huán)就是正常執(zhí)行完畢,所以會(huì)接著執(zhí)行else語(yǔ)句中的代碼塊。什么是不正常執(zhí)行完畢呢?就是for循環(huán)中用到了break語(yǔ)句,這個(gè)之后會(huì)講到。
動(dòng)手練習(xí)
1.自定義一個(gè)變量,賦值為你的名字,然后使用for循環(huán)迭代這個(gè)變量?
2.請(qǐng)問(wèn)下列代碼的輸出結(jié)果是什么?
for i in range(1, 100, 5):
print(i)
else:
print("end")
3.輸出1到100之間的所有奇數(shù)?