我有一个名为 list.py 的 Python 代码,用于与名为 data_sample 的本地 postgresql 数据库交互。这是我的代码:
import os
from sqlalchemy import create_engine
from sqlalchemy.orm import scoped_session, sessionmaker
engine = create_engine(os.getenv("data_sample"))
db = scoped_session(sessionmaker(bind=engine))
def main():
flights = db.execute("SELECT origin, destination, duration FROM flights").fetchall()
for flight in flights:
print(f"{flight.origin} to {flight.destination}, {flight.duration} minutes.")
if __name__ == "__main__":
main()
当我将代码作为 python list.py 执行时,出现以下错误:
Traceback (most recent call last):
File "list.py", line 6, in <module>
engine = create_engine(os.getenv("data_sample"))
File "/Users/admin/.pyenv/versions/3.7.3/lib/python3.7/site-packages /sqlalchemy/engine/__init__.py", line 500, in create_engine
return strategy.create(*args, **kwargs)
File "/Users/admin/.pyenv/versions/3.7.3/lib/python3.7/site-packages/sqlalchemy/engine/strategies.py", line 56, in create
plugins = u._instantiate_plugins(kwargs)
AttributeError: 'NoneType' object has no attribute '_instantiate_plugins'
似乎它不知道我的名为 data_sample 的数据库。我该如何解决?