1. 程式人生 > >叠代器與生成器

叠代器與生成器

python iter generator

叠代器

name = iter(‘inter‘)
for i in name:       #循環打印出叠代器中的內容
    print(i)
    print(type(i))

<class ‘str_iterator‘>

i

<class ‘str‘>

n

<class ‘str‘>

t

<class ‘str‘>

e

<class ‘str‘>

r

<class ‘str‘>


應用在文件操作中

f = open(‘E:\暫存\新建文本文檔.txt‘,‘r‘)
print(type(f))

for l in f:
    print(l)   #一行一行的打印出文件內容

f.close()


生成器

def getNum(x):
    y=0
    while y < x:
        yield y     #返回y
        y += 1
#執行的時候,函數執行到yield語句處就停止了,等待下一次叠代
        
        
g = getNum(10)
print(type(g))     #<class ‘generator‘>
#print(g.__next__())
#print(g.__next__())

for i in g:
    print(i)



叠代器與生成器