我正在尝试向我的 SQLAlchemy 脚本添加类型提示:
connection_string: str = "sqlite:///:memory:"
engine = create_engine(connection_string)
session = Session(bind=engine)
reveal_type(engine)
reveal_type(session)
我已针对 mypy
运行此脚本,但两种类型均返回为 Any
。 engine
和 session
变量应该是什么类型?
最佳答案
弄清楚了:
connection_string: str = "sqlite:///:memory:"
engine = create_engine(connection_string)
session = Session(bind=engine)
print(type(engine)) # sqlalchemy.engine.base.Engine
print(type(session)) # sqlalchemy.orm.session.Session
因此,类型提示是通过以下方式实现的:
from sqlalchemy.engine.base import Engine
def test_func(engine: Engine):
pass
关于python - SQLAlchemy 引擎和 session 对象的类型提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56118095/