如何选择指定Python版本执行streamlit run app.py命令运行应用
当你设备上安装了多个Python版本时,要指定版本运行streamlit run app.py,可以用以下几种方案,按优先级推荐:
方法一:显式调用目标Python解释器执行(最稳妥,不会受环境变量干扰)
直接在命令里指定你要用的Python版本,把streamlit换成模块调用形式即可,示例:
如果你要指定Python3.9运行,执行:python3.9 -m streamlit run app.py
Windows环境下如果没有配置版本别名,可以直接写Python解释器的完整路径,比如:C:\Python39\python.exe -m streamlit run app.py
这个方案会直接用你指定的Python解释器加载对应版本下安装的streamlit包,完全不会受其他Python版本的优先级影响,适合临时指定版本的场景方法二:先激活对应Python版本的环境再执行
如果你用conda、venv等工具管理不同的Python环境,只要先激活目标环境,再直接执行原命令即可:
比如conda环境下激活Python3.10的环境:conda activate py310
激活后执行:streamlit run app.py
此时会自动用该环境下的Python版本和对应安装的streamlit运行。方法三:固定streamlit默认调用的Python版本
如果你想让每次执行streamlit run都默认用指定的Python版本,可以配置别名:
Linux/macOS下可以在/.bashrc或/.zshrc中加入:alias streamlit="python3.10 -m streamlit"
保存后执行source ~/.bashrc(或对应配置文件)生效即可。
Windows环境下可以调整系统环境变量的PATH顺序,把你要使用的Python版本的Scripts目录移到其他Python版本的Scripts目录前面,因为streamlit的可执行文件默认存放在对应Python目录的Scripts子目录下。
内容的提问来源于stack exchange,提问作者Wilmer E. Henao

