模板
import asyncio
async def func1():
pass
await asyncio.sleep()
pass
async def func2():
pass
await asyncio.sleep()
pass
async def func3():
pass
await asyncio.sleep()
pass
# 方法一:
async def main():
f1 = func1()
await f1 # 一般await挂起操作放在协程对象前面,await必须卸载async函数里
f2 = func2()
await f2
f3 = func3()
await f3
# 方法二(推荐):
async def main():
tasks = [
asyncio.create_tasks(func1()),
asyncio.create_tasks(func2()),
asyncio.create_tasks(func3())]
await asyncio.wait(tasks)
if "__name__" == "__main__":
asyncip.run(main())
import asyncio
async def download(url):
await asyncio.sleep() # 发起网络请求
async def main():
urls= []
tasks = []
for url in urls:
d = asyncio.create_tasks(download(url))
tasks.append(d)
await asyncio.wait(tasks)
if "__name__" == "__main__":
asyncio.run(main())
import asyncio
import aihttp