Python ';等待&x27;运行程序时出现外部函数错误

Python ';等待&x27;运行程序时出现外部函数错误,python,database,Python,Database,我正在尝试使用模块数据库创建一个数据库 这是我尝试过的代码 from databases import Database database = Database('sqlite:///example.db') await database.connect() query = """CREATE TABLE HighScores (id INTEGER PRIMARY KEY, name VARCHAR(100), score INTEGER)""

我正在尝试使用模块数据库创建一个数据库

这是我尝试过的代码

from databases import Database
database = Database('sqlite:///example.db')
await database.connect()

query = """CREATE TABLE HighScores (id INTEGER PRIMARY KEY, name VARCHAR(100), score INTEGER)"""
await database.execute(query=query)

query = "INSERT INTO HighScores(name, score) VALUES (:name, :score)"
values = [
    {"name": "Daisy", "score": 92},
    {"name": "Neil", "score": 87},
    {"name": "Carol", "score": 43},
]
await database.execute_many(query=query, values=values)

query = "SELECT * FROM HighScores"
rows = await database.fetch_all(query=query)
print('High Scores:', rows)
它在函数外部返回一个错误“SyntaxError:'await'


如何修复此问题

您不能在
异步
函数外使用wait

async myFunc():
等待数据库连接()
但是,为了调用wait函数,您需要等待它们。 您可以通过使用
asyncio
包来实现这一点。(因此导入异步;)

导入异步IO
loop=asyncio.run(myFunc())#这将在不等待的情况下运行协同程序。
您可以将其转换为适用于所有其他函数。但是,我建议将所有内容放入
myFunc
中,而不是为所有内容创建一个新函数


查看

谢谢您的帮助!没问题!这解决了吗?myFunc是函数的占位符吗,因为如果是,我没有任何函数yet@CodyBrynlund是和否。将
myFunc
视为
main.py
(仅在本例中)。您只需在
asyncio中运行它。在func之外运行
。您可以随时将myFunc重命名为任何您想要的名称。好的,谢谢,我会试试的