Python 中的 async
/await
语法是 Python 异步编程的核心,从 Python 3.5 版本开始引入,使得编写异步代码变得更加简单和直观。
基本概念
- 异步编程:允许程序在等待操作完成时继续执行其他任务的编程范式,非常适合处理 I/O 密集型任务,如网络请求、文件读写等。
async
函数:使用async def
定义的函数。这种函数被调用时不会立即执行,而是返回一个awaitable
对象。await
表达式:用于暂停异步函数的执行,直到等待的awaitable
对象完成,释放执行权给事件循环。
使用 async
/await
定义异步函数
使用 async def
定义一个异步函数,函数内部可以使用 await
来调用其他异步函数或执行异步操作。
import asyncio
async def fetch_data():
print("开始获取数据...")
await asyncio.sleep(2) # 模拟 I/O 操作
print("数据获取完成")
return {'data': 123}
调用异步函数
异步函数需要在事件循环中调