鍍金池/ 教程/ Python/ Python3 for循環(huán)語句
Python3文件操作
Python3日期和時間
Python3基礎(chǔ)語法
Python3字典
Python3元組
Python3文件方法
Python3字符串
Python3引入什么新的東西?
Python3異常處理
Python3模塊
Python3數(shù)字
Python3變量類型
Python3函數(shù)
Python3循環(huán)
Python3 os文件目錄的方法
Python3 while循環(huán)語句
Python3斷言
Python3基本運算符
Python3環(huán)境安裝設(shè)置
Python3標(biāo)準(zhǔn)異常
Python3嵌套循環(huán)
Python3教程
Python3決策
Python3 for循環(huán)語句
Python3列表

Python3 for循環(huán)語句

Python中的 for 語句可用來迭代任何序列中的項目,如列表或字符串。

語法

for iterating_var in sequence:
   statements(s) 

如果一個序列中包含一個表達(dá)式列表時,它需要首先計算。然后,序列中的第一項被分配給所述迭代變量iterating_var,接下來, 語句塊被執(zhí)行。 列表中的每一項都被分配到iterating_var, 并執(zhí)行語句( statement)塊,直到整個序列完成。

流程圖


range()函數(shù)

內(nèi)置函數(shù)range() 是迭代數(shù)字序列的函數(shù)。它產(chǎn)生算術(shù)數(shù)列迭代器。
>>> range(5)
range(0, 5)
>>> list(range(5))
[0, 1, 2, 3, 4] 
range() 生成一個迭代從0開始到 n-1 的整數(shù)。要獲得序列的列表對象,它可以強制轉(zhuǎn)換為list()?,F(xiàn)在,這個列表可以使用 for 語句遍歷
>>> for var in list(range(5)):
	print (var)
這將產(chǎn)生以下輸出
0
1
2
3
4

示例

#!/usr/bin/python3

for letter in 'Python':     # traversal of a string sequence
   print ('Current Letter :', letter)
print()
fruits = ['banana', 'apple',  'mango']
for fruit in fruits:        # traversal of List sequence
   print ('Current fruit :', fruit)

print ("Good bye!")
當(dāng)執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
Current Letter : P
Current Letter : y
Current Letter : t
Current Letter : h
Current Letter : o
Current Letter : n

Current fruit : banana
Current fruit : apple
Current fruit : mango
Good bye!

通過序列索引進行遍歷

另一種方式是通過索引偏移迭代序列的每個項目。下面是一個簡單的例子 -

#!/usr/bin/python3

fruits = ['banana', 'apple',  'mango']
for index in range(len(fruits)):
   print ('Current fruit :', fruits[index])

print ("Good bye!")
當(dāng)執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
Current fruit : banana
Current fruit : apple
Current fruit : mango
Good bye! 

在這里,我們使用了 len() 的內(nèi)置函數(shù),它用來計算元組的元素總數(shù),以及 range() 內(nèi)置函數(shù)用來遍歷序列順序。

for循環(huán)使用else語句

Python支持在循環(huán)語句相關(guān)聯(lián)else語句
  • 如果else語句和for循環(huán)語句一起使用,else塊只在 for 循環(huán)正常終止時執(zhí)行(而不是遇到break語句)。

  • 如果else語句用在 while循環(huán)中,當(dāng)條件變?yōu)?False 時,則執(zhí)行else語句。

下面的例子說明了一個else語句和for語句相結(jié)合使用,在給定的列表數(shù)中搜索偶數(shù)。
#!/usr/bin/python3

numbers=[11,33,55,39,55,75,37,21,23,41,13]

for num in numbers:
    if num%2==0:
        print ('the list contains an even number')
        break
else:
    print ('the list doesnot contain even number')
當(dāng)執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
the list doesnot contain even number