假设我有一些异步协程,它获取一些数据并返回它。如下所示:
async def fetch_data(*args):
result = await some_io()
return result基本上,这个协程是从协程链中调用的,初始协程是通过创建一个任务来运行的。但是,如果出于测试目的,我只想在运行某些文件时以这种方式运行一个协程:
if __name__ == '__main__':
result = await fetch_data(*args)
print(result)显然我不能这样做,因为我试图运行并等待来自非协程函数的协程。所以问题是:有没有一些正确的方法来从协程中获取数据而不调用它的函数?我可以为result创建一些Future对象,然后等待它,但也许还有其他更简单、更清晰的方法?
https://stackoverflow.com/questions/41263988
复制相似问题