[Python] aiter() 함수 사용방법 및 예제

1개월 전 질문 1개월 전 토론 11 views

aiter(async_iterable)

비동기 이터레이터에 대해 비동기 이터레이터를 리턴합니다.

x.__aiter__()를 호출하는 것과 같습니다.

파이썬 3.10에 추가되었습니다.

 

주의

iter()와 다르게 aiter에는 2-인수 변형(2-argument variant)이 없습니다.

 

예제

from asyncio import sleep, run

class Foo:
    def __aiter__(self):
        self.i = 0
        return self
    async def __anext__(self):
        await sleep(1)
        self.i += 1
        return self.i

async def using_async_for():
    async for bar in Foo():
        print(bar)
        if bar >= 10:
            break

async def using_aiter_anext():
    ai = aiter(Foo())
    try:
        while True:
            bar = await anext(ai)
            print(bar)
            if bar >= 10:
                break
    except StopAsyncIteration:
        return

async def main():
    print("Using async for:")
    await using_async_for()

    print("Using aiter/anext")
    await using_aiter_anext()

if __name__ == '__main__':
    run(main())

python 강좌 aiter

2022-05-17 11:57

0개의 해답

해결방법이나 팁을 알고 계신다면


© 2022 pinfo. All rights reserved.