Python异步编程7:异步迭代器

Python011

Python异步编程7:异步迭代器,第1张

迭代器:在其内部实现yield方法和next方法的对象。可迭代对象:在类内部实现一个iter方法,并返回一个迭代器。

异步迭代器:实现了__aiter__()和__anext__()方法的对象,必须返回一个awaitable对象。async_for支持处理异步迭代器的

__anext__()方法返回的可等待对象,直到引发一个stopAsyncIteration异常,这个改动由PEP 492引入。

异步可迭代对象:可在async_for语句中被使用的对象,必须通过它的__aiter__()方法返回一个asynchronous_iterator(异步迭代器).  这个改动由PEP 492引入。

示例: 不能直接写在普通方法或者暴露在外面。必须写在协程函数,任意协程函数均可。

输入代码:deffun():l=[]foriinrange(1,101):ifi%7==0:l.append(i)elifstr(i)[-1]=='7':l.append(i)returnl。