Pycharm 虚拟环境识别的问题

2019-08-01 17:09:14 +08:00
 hushao

本地 python3 -m venv .venv 自行创建了虚拟环境 .venv,Pycharm 打开后显示为正常的普通目录结构

但是使用 Pycharm 创建的虚拟环境 .venv,在 Pycharm 打开显示为标记黄色的目录,这是什么原因呢,这两种虚拟环境对于 Pycharm 来说有什么不同吗?还是说我设置的有什么忽略的地方,有大神了解不?

-- by the way

另外,使用虚拟环境和 django-admin startproject xxx创建 django 项目,然后把虚拟环境放到项目根目录下,,,好像有点诡异的情况就是 1、在外部的系统 python 下安装 django,然后创建完项目 2、django 项目目录下创建虚拟环境 3、再次安装 django。。。

然后形成如下的目录:

django_project
|__.venv(虚拟环境)
|__manage.py
|__xxx
|...

如上 django 项目创建是否合理。。。我也是迷糊了

3180 次点击
所在节点    Python
4 条回复
xpresslink
2019-08-01 17:36:33 +08:00
用 pycharm 创建的项目在项目根目录下会产生一个.idea 目录,里面放这个项目的所有配置,包括使用哪个解释器(虚拟环境)
你自己在 pycharm 之外手工创建的虚拟环境在 pycharm 中并没有注册登记过,所以只是当成一个普通目录。你需要手工设置一下。File->Settings-Project (projectName) ->Project Interpreter 点那个下拉框右过的齿轮,选第一个 Add...

弹出窗口,Virtualenv Environment, 选下面那个 radio button,Existing environment,然后点下拉框右边按钮选到你的 venv 的解释器执行文件
Hstar
2019-08-01 17:43:14 +08:00
你是想问为什么 pycharm 创建的文件夹自带颜色是吗。
你手动也可以做,右键.venv 文件夹,选 “ mark directory as ”,在后续选单中选择黄色的那个。
因为 pycharm 还没那么智能,能嗅探文件夹内容自动标记。
xpresslink
2019-08-01 17:43:52 +08:00
最省事的方式是直接用 pycharm (必须专业版) File->New Project 中选创建 django 项目,直接让 pycharm 帮你创建一个虚拟环境或选到自己指定的虚拟环境。然后在要 Pycharm 下面的 terminal 窗口中执行 manage 命令,这样虚拟环境才是激活的。或者使用 tools 菜单里面 manage task 去执行 startapp 之类的命令。
hushao
2019-08-02 12:23:12 +08:00
感谢两位的指导,确实是 `Project > Project Structrue > Mark as Exculded`,需要手动标记。这些标记过得文件夹对 pycharm 不可见,也就是你说排除索引,类似于 git 中的 gitignore。

顺着提供的思路找到如下,原文档:
```
Excluded

Mark a folder as an excluded root.

Excluded roots are not visible to PyCharm. Usually, one would like to exclude temporary build folders, generated output, logs, and other project output. Excluding the unnecessary paths is a good way to significantly improve performance.

This command is duplicated from the context menu of a content root.
```

感谢,以前确实不明白设置中的这点,受教了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/588271

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX