Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 运行时警告:协同程序';主要';从来没有等待过_Python - Fatal编程技术网

Python 运行时警告:协同程序';主要';从来没有等待过

Python 运行时警告:协同程序';主要';从来没有等待过,python,Python,我正在尝试解析并将JSON设置为异步,但得到: 运行时警告:从未等待协同程序“main” 如何正确使用async?如错误消息中所述,您必须等待主函数,因为它是异步的。借来 请注意,仅仅调用一个协程并不会计划执行它 鉴于您希望运行顶级入口点,在Python 3.7+中,您应该使用 如果名称=“\uuuuu main\uuuuuuuu”: asyncio.run(main()) 对于早期版本,您必须自己处理事件循环: 如果名称=“\uuuuu main\uuuuuuuu”: loop=asynci

我正在尝试解析并将JSON设置为异步,但得到:

运行时警告:从未等待协同程序“main”


如何正确使用async?

如错误消息中所述,您必须等待主函数,因为它是异步的。借来

请注意,仅仅调用一个协程并不会计划执行它

鉴于您希望运行顶级入口点,在Python 3.7+中,您应该使用

如果名称=“\uuuuu main\uuuuuuuu”:
asyncio.run(main())
对于早期版本,您必须自己处理事件循环:

如果名称=“\uuuuu main\uuuuuuuu”:
loop=asyncio.get\u event\u loop()
循环。运行\u直到完成(main())
import asyncio
import aiohttp

async def get_put_content(url_get, url_put, session):
    async with session.get(url_get) as response:
        data = await response.read()

    async with session.put(url_put, data=data) as response:
        print(response.status)     

async def main():
    async with aiohttp.ClientSession() as session:
        for temp_id in range (1, 100):
            api_url = "https://api.link" + str(temp_id)
            bd_url = "http://127.0.0.1:5984/photosget/" + str(temp_id)
            asyncio.create_task(get_put_content(api_url, bd_url, session))

        asyncio.wait(get_put_content)

if __name__ == '__main__':
    main()