Python环境
python有个环境概念, 还不错, 可以解决各种依赖冲突问题
VS code自动了
- 在vscode的terminal中安装python的库ipykernel时, 自动建议弄个环境:
- /Users/bergman/my2024/.venv/bin/python
copilot建议这么安装库
# 设置环境
source /Users/bergman/my2024/.venv/bin/activate
# 如果还没安装socks依赖, 那么要使用http代理, 例如.zshrc里面的别名
alias httpon="export all_proxy=http://127.0.0.1:7890"
# 安装socks依赖, 如果翻墙用的socks那么要装这个
pip install PySocks
# 升级pip, 这个很重要, 最新的环境需要最新的pip
pip install --upgrade pip
# 安装ipykernel, vscode执行ipynb需要这个
pip install ipykernel
2025.3.29更新, 以flet为例
# 搭建虚拟环境, 在本地建了一个 .myvenv目录
python3 -m venv .myvenv
source .myvenv/bin/activate
# 参数扩展:
--system-site-packages:允许虚拟环境访问系统全局安装的包
--prompt:自定义虚拟环境提示符名称,例如 python -m venv --prompt=projectA myenv
# 使用pip在虚拟环境安装包, 此时已经不需要pip3了, 因为是虚拟环境, pip就是pip3
pip install 'flet[all]'
# 退出虚拟环境
deactivate
# 删除虚拟环境: 直接删除文件夹即可
# ! 上面这句是胡说八道 ------2025.3.30再次更新------
# 查看虚拟环境
echo $VIRTUAL_ENV
deactivate
code ~/.zshrc
搜索: flet_env
# 俺没有找到, 只能下面继续
code ~/.zprofile
code ~/.zshenv
# 俺依旧没有找到, 只能刷新看看
exec zsh
# 再看看个人根目录下面是否有这玩意
ls ~/flet_env
# 全局搜索都没有, 只能最后一招, 重启试试了
# 最终deepseek给出了正确答案.
禁用vscode的python相关插件, 然后重启vscode再打开插件, 以便清楚插件的缓存
# conda相关操作:
# 创建环境
conda create --name myenv python=3.9
# 激活
conda activate myenv
# 退出
conda deactivate
2025.4.4更新 vscode的py虚拟环境
vscode会错误识别虚拟环境, 以致于弹出警报:全局安装,
然后就对着代码报警: 无法解析导入“PySide6.QtWidgets”, 对应代码: from PySide6.QtWidgets import QApplication, QMainWindow, QTextEdit
# 虚拟环境中查看解释器版本
which python # macOS/Linux
# vscode中选择虚拟环境
cmd + shift + p -> python: select interpreter(解释器)
# 如果虚拟环境没有出现, 那么是因为根目录虚拟环境所在的目录不是vscode的根目录
# 此时会发现terminal不需要source 虚拟环境, vscode自动搞好了
# 验证下都安装了哪些库
pip list
# 安装了微软的python environments插件后, 左边出现四叶草状蛇缠绕图标, 点开就可以直接看到各种python信息
2025.5.18 后记
新建虚拟环境时, 千万不要图省事用默认名字, 那玩意用一段时间之后, python自己就混乱了.
# 此时, 我们只能删除重装.
deactivate
# 一定要反复运行上面这个, 完全确认退出了环境.
# 然后新建环境时, 千万不要用vscode默认的新建, 那个玩意就是建.venv的根源.
python3 -m venv .myvenv
source .myvenv/bin/activate
后记: vscode很多时候拥有特别顽强的记忆, deactivate之后, 再次开新的terminal, 老的虚拟环境会再次出现, 即便此时, 你已经删除了它, 那么此时, 可以再次deactivate, 然后建个新的, 新的就会生效.