python中的for迴圈:
1 x = 'hello'2
for i in x:#
iter_x=x.__iter__()
3print(i)#
iter_x.__next__()
iter_l =x.__iter__()#遵循迭代器協議,生成可迭代物件print(iter_l.__next__())#for迴圈和索引沒關係 基於迭代器機制
對列表的索引:【超出索引值報錯】
1 l = [1,2,3]2print
(l[0])
3 index =0
4while index5print
(l[index])
6 index+=1
對集合的索引:【超出索引值報錯】
1 s =2 iter_s = s.__iter__()3
print(iter_s.__next__
())4
print(iter_s.__next__
())5
print(iter_s.__next__
())6
print(iter_s.__next__())
對字典的索引:【超出索引值則報錯】
1 dict =2 iter_d =dict.__iter__()3
print(iter_d.__next__
())4
print(iter_d.__next__
())5
#print(iter_d.__next__())#報錯:dict預設索引值為key6#
print(iter_d.__next__())#報錯:dict預設索引值為key
對檔案的索引:
python 中for迴圈的強大之處在於可以遍歷序列和非序列型別 例如檔案
1 f = open('位元組方式與檔案.txt
','r+
',encoding='
utf-8')
2 text_f =f.__iter__()3
print(text_f.__next__(),end='')4
print(text_f.__next__
())5
print(text_f.__next__())
6 f.close()
補充:next()內建函式
1 list=['xx1','
xx2','
xx3','
xx4'
]2 iter_1=l.__iter__()3
#print(iter_l.__next__())4#
print(iter_l.__next__())5#
print(iter_l.__next__())6#
print(iter_l.__next__())
7print(next(iter_1))#
next()python內建函式 呼叫iter_l.__next__()【資料型別的內建函式】
python中for迴圈 迭代的技巧
示例如下 coding utf 8 def print elem container for elem in container print elem,end print 在迭代過程中修改迭代序列不安全,所以要修改序列時,要對它的副本做迭代,而不是原序列本身 arr 1,2,3,4 for elem...
python 迴圈(迭代)
for 和 while for用來迭代處理,什麼叫迭代?你就當沒看到這個詞,for是把一堆玩意做乙個乙個加工用的,比如吃一袋花生,得乙個乙個剝吧,就是這意思 a abcde 每個字母當做乙個花生,a是一袋子 for i in a 從袋子裡面乙個乙個拿花生,拿出的每乙個花生都起名叫小i君 i i ma...
python中的for迴圈(迭代器機制)
python中的for迴圈 1 x hello 2 for i in x iter x x.iter 3 print i iter x.next iter l x.iter 遵循迭代器協議,生成可迭代物件 print iter l.next for迴圈和索引沒關係 基於迭代器機制 對列表的索引 超出...