async map processes items concurrently in an async context. regular map processes sequentially.
1import asyncio23async def process(item):4 await asyncio.sleep(1) # Simulate async work5 return item * 267async def main():8 items = [1, 2, 3, 4, 5]910 # Regular map — sequential (5 seconds)11 results = []12 for item in items:13 result = await process(item) # Waits each time14 results.append(result)1516 # Async map — concurrent (1 second)17 tasks = [process(item) for item in items]18 results = await asyncio.gather(*tasks)1920 # Using map function21 async def async_map(func, iterable):22 return await asyncio.gather(*[func(item) for item in iterable])2324 results = await async_map(process, items)25 print(results) # [2, 4, 6, 8, 10]2627asyncio.run(main())
Performance: