async Async function
Last updated: 2026-09-22
async Async function
async declares an async def function or async with statement.
| Category | Keywords & Statements |
|---|---|
| Kind | Keyword / Statement |
| Python Version | 3.5+ |
📝 Syntax
async def name(params):
body
[async with expr as var: block]
▶ Example
Edit the code, press Run, and see the result in the output panel:
Output:
hi
🏷️ Related Keywords / Statements
💡 Related Cases
More case studies coming soon — check back later.
❓ FAQ
QWhat is the difference between `async def` and `def`?
A`async def` defines a coroutine function. Calling it does not execute the body; it returns a coroutine object. You must `await` it, or drive it with `asyncio.run()`, for it to actually run.
QWhy does calling an async function at module top level not run?
ABecause the call returns a coroutine object, and top-level code cannot use `await` directly. The correct approach is to wrap it: define `async def main(): ...` and run it with `asyncio.run(main())`.
QCan `async` only be used with `asyncio`?
ANo. `async`/`await` are language syntax; `asyncio` is just the most common event-loop implementation. `async with` and `async for` are used for asynchronous context management and asynchronous iteration, respectively.