python中的for迴圈
阿新 • • 發佈:2019-01-27
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迴圈有三成就夠了,當然,請根據你的實際情況去考慮..