async
在Python中,async
关键字用于定义异步函数。
异步函数是可以在任何时候暂停和恢复的函数,允许其他代码在此期间运行。
这对于涉及等待外部资源的任务非常有用,例如网络请求或文件操作,而不会阻塞其他代码的执行。
async
关键字用于定义异步函数。
异步函数使用 async
关键字在 def
关键字之前进行定义,如下所示:
async def my_async_function():
# 代码放在这里
在异步函数内部,您可以使用 await
关键字暂停函数的执行,直到满足某个条件。
这个条件通常是一个可等待的协程,它是一种特殊类型的对象,可以被等待。
async def function_name():
# 代码放在这里
在上面的代码中,async
是用于定义异步函数的关键字。function_name
是函数的名称,函数内部的代码在函数定义下缩进。
import asyncio
async def fetch_data(url):
# 模拟网络请求
await asyncio.sleep(1)
return "从 " + url + " 获取的数据"
async def main():
# 创建协程列表
coroutines = [
fetch_data("https://example.com"),
fetch_data("https://google.com"),
fetch_data("https://github.com")
]
# 等待所有协程完成
results = await asyncio.gather(*coroutines)
# 打印结果
for result in results:
print(result)
# 运行主函数
asyncio.run(main())
在上面的代码中,我们定义了一个异步函数 fetch_data
,它通过睡眠1秒来模拟网络请求。
然后,我们定义了另一个异步函数 main
,它创建了一个协程列表,使用 asyncio.gather
等待所有协程完成,并打印结果。
await
关键字只能在异步函数内部使用。