生成器實現迭代大列表

l = [0,1,2,3,4,5,6,7,8,9,]   #模擬一個大列表
def list_scan_iter(L):
    start = 0   #從0開始取值
    while True:
        # 第一次:0,1,2,3
        # 第二次:4,5,6,7
        # 第三次:8,9
        vals = L[start:start+4]    #每次取4個值
        start += 4
        if not vals:    #vals=[]時
            return 
        for val in vals:
            yield val


ret = list_scan_iter(l)

for i in ret:
    print(i)

結果:spa

0
1
2
3
4
5
6
7
8
9
相關文章
相關標籤/搜索