1. 程式人生 > >python中的for迴圈

python中的for迴圈

for迴圈

比方說我手中有一張名單表,我需要把這個名單裡面所有名字都念出來。再程式的世界中使用for迴圈完全可以幫你代勞這件小事,先看看for迴圈的語法:

for 變數名 in 儲存了多個數據的陣列型別:
	需要執行的程式碼塊

實現上面的需求:

# 名單
name_list = ["張三", "李四", "王五", "趙六", "孫七"]

for name in name_list:
	print(name)  # 迴圈執行列印每個元素

結果:

張三
李四
王五
趙六
孫七

for 和 in 是固定搭配不會變,變數名是自己定義的,做臨時儲存資料。 陣列型別可以是列表(list),元組(tuple),字典(dict),集合(set)。 總之是個多數值型別即可,甚至是個字串都是沒問題的,如下:

for name in "name_list":
	print(name)  # 迴圈執行列印每個元素

結果:

n
a
m
e
_
l
i
s
t
for迴圈的巢狀

有一名老師把自己所教的所有班級名稱放在了一個集合裡,又把每個班級的人員放在對應的班級名稱列表裡,現在我們把每個班級人員,一個班級列印一行出來:

high_school1 = ["張三", "李四", "王五"]  # 高中1班 
high_school2 = ["趙六", "孫七", "老王"]  # 高中2班
high_school3 = ["豬八戒", "孫悟空", "沙和尚", "唐僧"]  # 高中3班

# 班級總列表
class_list = [high_school1, high_school2, high_school3]

for cla in class_list:
	for name in cla:
		print(name, end=".\t")
	print()

執行結果:

張三.	李四.	王五.	
趙六.	孫七.	老王.	
豬八戒.	孫悟空.	沙和尚.	唐僧.	

這裡首先定義了三個班人員名稱的列表,然後再把三個班級的列表再新增到總列表class_list中,第一層for迴圈,會迴圈把總列表中的每個班級列表去出來,當取出第一個班級列表時,又遇到了第二層for迴圈,第二層for迴圈便會取出這個班級列表中的每個學生的姓名,第二層for循壞執行完之後第一層for循壞緊接這取出第二個班級列表,便又在此遇到了第二層for循壞.....

如果你想,可以多重巢狀for循壞,但是在你這麼做之前要想清楚,是否有其他更簡單的方法,一般建議for迴圈有三成就夠了,當然,請根據你的實際情況去考慮..