首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有异步Python3的Python3 SyntaxError

带有异步Python3的Python3 SyntaxError
EN

Stack Overflow用户
提问于 2018-07-13 09:48:15
回答 1查看 408关注 0票数 1

我正在尝试创建一个连接池,如文献资料所示,以测试模块。

,这是我最后一次尝试:

代码语言:javascript
复制
import asyncpg
cs = "user:password@my_postgresql_server_ipaddr:port/database?name=db_name"

async with asyncpg.create_pool(dsn=cs) as pool:
    print("pool created")

我在第4行得到一个SyntaxError,指向“with”:

代码语言:javascript
复制
async with asyncpg.create_pool(dsn=cs) as pool:
         ^
SyntaxError: invalid syntax

在终端上运行Python解释器上的代码会产生相同的结果。

Python为3.6.5,使用python3 script.py从终端运行脚本

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-13 10:13:05

您应该将代码包装在async函数中,并在循环中调用它,例如:

代码语言:javascript
复制
import asyncio
import asyncpg

async def test():
    cs = "user:password@my_postgresql_server_ipaddr:port/database?name=db_name"
    async with asyncpg.create_pool(dsn=cs) as pool:
        print("pool created")

if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    loop.run_until_complete(test())
    loop.close()

更多细节:例子-链-协同线

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51322347

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档