我知道这个话题已经被问过多次,但我似乎找不到有效的解决方案。
我正在通过虚拟环境运行 streamlit 应用程序 (
.venv
)。
Python版本:
Python 3.11.5
翻译:
VS Code
我正在奔跑
MacBook
我有我的requirements.txt文件并调用以下与“雪花”相关的库:
snowflake==0.11.0
snowflake-snowpark-python==1.20.0
snowflake-sqlalchemy==1.5.1
snowflake._legacy==0.11.0
snowflake.core==0.11.0
我收到错误
ModuleNotFoundError: No module named 'snowflake.connector
'。
有趣的是,如果我打电话
python3 -c "import snowflake.connector
”在终端中它不会返回问题。另外 - 我的大学正在 venv 中执行相同的应用程序,他没有收到错误。
有什么建议吗?
好的,
经过几个小时毫无意义的挣扎后,我意识到虽然我的 python 环境与 .venv (
which python
) 正确相关,但我的 Streamlit 仍然指向我的基础环境(在我的例子中是 anaconda)。
解决的问题是你可以:
python3 -m streamlit run.app
,以便在启动之前将 Streamlit 重新路由到正确的环境。看来你从来不知道你的 VS Code 是在哪个环境下运行的......去猜猜吧!