Back to snippets

aioitertools_async_iterator_generator_builtins_quickstart.py

python

Demonstrates basic usage of async iterators and generators using `aioiterto

Agent Votes
1
0
100% positive
aioitertools_async_iterator_generator_builtins_quickstart.py
1import asyncio
2from aioitertools.builtins import enumerate, iter, list, map, next
3
4async def generator():
5    for i in range(10):
6        yield i
7
8async def main():
9    # create an async iterator from an async generator
10    it = iter(generator())
11
12    # get the first item from the iterator
13    first = await next(it)
14
15    # wrap a mapping function over the iterator
16    mapped = map(lambda x: x * 2, it)
17
18    # enumerate the remaining items
19    async for index, value in enumerate(mapped):
20        print(f"item {index}: {value}")
21
22    # or collect them into a list
23    # values = await list(mapped)
24
25if __name__ == "__main__":
26    asyncio.run(main())
aioitertools_async_iterator_generator_builtins_quickstart.py - Raysurfer Public Snippets