将 2 个或更多异步 HTTP 调用的结果设置为命名变量
Set result of 2 or more Async HTTP calls into named variables
我想要实现的是:
tasks = [call(url) for url in urls]
call
是 Python3.5 中的 async
方法/ coroutine
来执行 GET 请求,比方说 aiohttp
.
所以基本上所有的调用都是异步的。现在我可以 运行 asyncio.wait(tasks)
然后在 futures 中一个一个地访问结果。
但是,我想要的是,假设只有 2 个 url,那么:
a, b = call(url1), call(url2)
类似于在 Koa 中生成数组的方式。任何帮助如何做到这一点,如果可以做到吗??
var1, var2 = loop.run_until_complete(asyncio.gather(task1, task2))
根据文档,gather 保留了传递给它的序列的顺序
我想要实现的是:
tasks = [call(url) for url in urls]
call
是 Python3.5 中的 async
方法/ coroutine
来执行 GET 请求,比方说 aiohttp
.
所以基本上所有的调用都是异步的。现在我可以 运行 asyncio.wait(tasks)
然后在 futures 中一个一个地访问结果。
但是,我想要的是,假设只有 2 个 url,那么:
a, b = call(url1), call(url2)
类似于在 Koa 中生成数组的方式。任何帮助如何做到这一点,如果可以做到吗??
var1, var2 = loop.run_until_complete(asyncio.gather(task1, task2))
根据文档,gather 保留了传递给它的序列的顺序