WSL下通过pyenv创建虚拟环境的Django项目如何配置PyCharm解释器
配置选型结论
不要单独使用「Virtualenv Environment」分类配置,也不要直接选WSL默认的系统Python解释器,正确方式是:以WSL作为基础运行环境,加载你已经通过pyenv创建好的现有my_site虚拟环境
- 纯「Virtualenv Environment」分类的设计初衷是扫描Windows本地文件系统的虚拟环境,即便手动填入WSL路径,也会因为走Windows文件访问逻辑,出现解释器加载失败、依赖识别不全的问题
- 直接选WSL默认的系统Python路径,会跳过你创建的独立虚拟环境,导致项目运行时用错Python版本、找不到已安装的项目依赖
分步实操配置(适配PyCharm 2020.3专业版)
- 打开设置面板:依次进入
File > Settings > Project: [你的项目名称] > Python Interpreter,点击页面右侧的齿轮图标,选择「Add...」唤起配置窗口 - 左侧菜单栏直接选择「WSL」分类,跳过上方的「Virtualenv Environment」选项
- 在「Distribution」下拉列表中,选择你安装了Ubuntu 20.04.1的对应WSL发行版条目
- 解释器路径填写pyenv虚拟环境的内部绝对路径:
- 通用路径格式为:
/home/[你的WSL登录用户名]/.pyenv/versions/my_site/bin/python - 怕填错的话,可以直接在WSL终端的项目目录下执行
which python,命令输出的路径就是该虚拟环境下Python解释器的准确位置,直接复制粘贴到PyCharm的路径框即可
- 通用路径格式为:
- 点击「OK」确认配置,等待PyCharm完成解释器索引拉取,确认页面展示的已安装包列表包含你此前在虚拟环境内安装的Django等依赖,即配置生效
常见踩坑提示
- 不要填入Windows格式的WSL路径(比如
\\wsl$\Ubuntu-20.04\home\...),WSL分类下的路径输入框要求填写Linux内部格式的绝对路径,UNC格式路径会被PyCharm识别为Windows本地路径,导致加载失败 - 配置完成后如果运行项目出现权限报错,可在WSL终端执行
chmod +x /home/[你的用户名]/.pyenv/versions/my_site/bin/python给解释器文件加执行权限
内容的提问来源于stack exchange,提问作者Mario Migliaccio
相关产品推荐
相关产品推荐

