asyncio is a library to write concurrent code using the async/await syntax.
asyncio is used as a foundation for multiple Python asynchronous frameworks that provide high-performance network and web-servers, database connection libraries, distributed task queues, etc.
asyncio is often a perfect fit for IO-bound and high-level structured network code.
See also
Explanation of the fundamentals of asyncio.
asyncio provides a set of high-level APIs to:
Additionally, there are low-level APIs for library and framework developers to:
Availability: not WASI.
This module does not work or is not available on WebAssembly. See WebAssembly platforms for more information.
You can experiment with an asyncio concurrent context in the REPL:
$ python -m asyncio asyncio REPL ... Use "await" directly instead of "asyncio.run()". Type "help", "copyright", "credits" or "license" for more information. >>> import asyncio >>> await asyncio.sleep(10, result='hello') 'hello'
This REPL provides limited compatibility with PYTHON_BASIC_REPL. It is recommended that the default REPL is used for full functionality and the latest features.
Raises an auditing event cpython.run_stdin with no arguments.
Changed in version 3.12.5: (also 3.11.10, 3.10.15, 3.9.20, and 3.8.20) Emits audit events.
Changed in version 3.13: Uses PyREPL if possible, in which case PYTHONSTARTUP is also executed. Emits audit events.
High-level APIs
Low-level APIs
Guides and Tutorials
Note
The source code for asyncio can be found in Lib/asyncio/.
© 2001–2025 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.14/library/asyncio.html