002-Python开发环境搭建:PyCharm、VSCode与虚拟环境

7 篇文章 ¥19.90 ¥99.00

002-Python开发环境搭建:PyCharm、VSCode与虚拟环境


昨天深夜调试一个老项目,环境依赖冲突直接让解释器崩了。错误日志里密密麻麻的版本号看得人头皮发麻——这场景太熟悉了,又是全局环境乱装包的后果。折腾两小时回滚环境后,我决定把环境搭建这件事重新梳理清楚。工具选对,环境隔离做好,能省下至少一半的调试时间。

选编辑器:PyCharm还是VSCode?

新手常纠结这两个选择。我的建议是:长期做Python开发选PyCharm,多语言混战选VSCode

PyCharm的专业版对Web开发、科学计算支持很到位,特别是Django和Flask的项目,开箱即用。它的智能补全和调试器是我用过最顺手的,尤其是远程调试和数据库工具链。社区版也够用,但大型项目导航会稍显吃力。

# PyCharm的调试技巧:条件断点
for i in range(1000):
    # 右键断点设置 i == 500 时才暂停
    process_data(i)  # 不用傻等循环跑完

VSCode的优势在于轻量和插件生态。装上Python扩展后,基本功能齐备,但深度功能需要自己配置。它的多语言支持是真香,前脚写Python,后脚改JavaScript,不用切软件。不过项目文件超过千个时,索引速度会明显慢于PyCharm。

// settings.json 关键配置(VSCode)
{
    "python.linting.enabled": true,  // 代码检查一定打开
    "python.formatting.provider": "black",  // 格式化用black准没错
    "terminal.integrated.shell.windows": "cmd.exe"  // Windows下别用PowerShell,路径处理有坑
}

虚拟环境:别再用全局环境了

见过太多人用pip install直接往系统Python里装包,后期项目依赖打架,只能重装系统Python。虚拟环境是Python项目的保险绳。

venv是官方推荐,Python 3.3以上自带,无额外安装成本:

python -m venv myenv  # 创建环境
source myenv/bin/activate  # Linux/Mac激活
myenv\Scripts\activate  # Windows激活,注意反斜杠

激活后终端提示符会带环境名,这时候pip install只会装到当前环境。退出用deactivate

Anaconda适合科学计算场景,尤其是需要非Python库(如CUDA、MKL)的时候。但注意conda的依赖解析有时很慢,混合使用conda和pip要小心优先级。

conda create -n myenv python=3.8  # 指定Python版本
conda activate myenv
conda install numpy  # 优先用conda装,包更稳定
pip install some-package  # conda没有的再用pip

依赖管理:requirements.txt只是起点

手动维护requirements.txt太原始了,试试pip freeze > requirements.txt?它会把所有包包括间接依赖都列出来,导致环境臃肿。推荐用pipreqs只生成项目实际导入的包:

pip install pipreqs
pipreqs ./ --encoding=utf-8  # 生成干净的requirements.txt

进阶玩家该上PoetryPipenv了。Poetry的依赖解析算法更优,还能打包发布:

# pyproject.toml (Poetry配置)
[tool.poetry.dependencies]
python = "^3.8"
requests = { version = "^2.25", extras = ["security"] }  # 可以声明额外特性

调试实战:环境问题排查

遇到“ModuleNotFoundError”先别慌,按这个顺序查:

  1. import sys; print(sys.path) 看Python去哪儿找包
  2. which pythonwhere python 确认当前Python解释器
  3. 检查虚拟环境是否激活(终端提示符或sys.prefix
  4. 如果是PyCharm,去设置里看项目解释器路径对不对

PyCharm调试时有个隐藏技巧:在调试控制台直接运行代码片段,能实时查看变量。VSCode则要善用“调试控制台”和“监视”窗口。

个人配置习惯

我的工作流通常这样安排:

  • 本地开发:PyCharm + venv,用Poetry管理依赖
  • 服务器调试:VSCode Remote SSH直接连过去,在服务端创建虚拟环境
  • 临时脚本:直接用VSCode,开个临时虚拟环境,用完即删

环境目录我习惯放在项目根目录下(./venv),方便备份和删除。但记得在.gitignore里加venv/.env,别把虚拟环境传上Git。

最后给个忠告:不要相信系统Python,也不要相信任何声称“只装一个包”的冲动。每个项目都该有自己独立的虚拟环境,这是血泪教训换来的纪律。刚开始觉得麻烦,等哪天需要同时维护Python 2.7的老项目和Python 3.10的新项目时,你会回来谢我的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值