在 PyCharm 的 virtualenv 中排除系统范围的包

Excluding system-wide packages in a virtualenv in PyCharm

我创建了一个虚拟环境。下面是我安装的第三方包。

(zhihu-py3)
laike9m@laike9m  ~/D/P/E/z/zhihu-py3   master 
❯ pip freeze                                                                                                                       
beautifulsoup4==4.4.1
html2text==2015.6.21
requests==2.8.1
zhihu-py3==0.2.5

但是,当我进入 PyCharm 中的“项目解释器”页面时,它列出了我在系统范围内安装的所有软件包,这真的很烦人。

如何让那些包不显示?我只想查看安装在这个特定 virtualenv 中的那些。

编辑
虽然 --no-site-packages 参数适用于 Python2,但如果我使用 Python3

创建了一个 virtualenv,它就不起作用

我用 --no-site-packages arguemnt:

重新创建了这个 virtualenv
(zhihu-py3)
laike9m@laike9m  ~/D/P/E/zhihu-py3 
❯ pip freeze                                                                                                          
wheel==0.24.0

请注意 no-global-site-packages.txt 确实存在。

laike9m@laike9m  ~/D/P/E/zhihu-py3 
❯ ll lib/python3.5/ | grep no-gl                                                                                                    
-rw-r--r--   1 laike9m  staff      0 Oct 21 15:03 no-global-site-packages.txt

但是,PyCharm 从系统范围加载所有包。

我尝试从 Pycharm 的“解释器路径”设置中删除路径。它只是显示“已被用户删除”,但从未真正删除这些路径

现在我怀疑这是 PyCharm 的错误。

一些其他信息:
系统:OS X 10.10.5
PyCharm版本:4.5.4
Python3.5 通过自制程序安装在以下位置:/usr/local/Cellar/python3/3.5.0/

编辑2
PyCharm 支持团队说:

PyCharm uses sys.path which is wrong for you. As you can see, it works with 2.7 version, so the problem is specific to Python, not PyCharm.

Someone from Python community will help you. It's not specific to PyCharm.

使用 virtualenv --no-site-packages my-venv-folder 从命令行创建 virtualenv。这样,已经安装在系统范围 Python 安装 (site-packages) 中的软件包不会反映在虚拟环境中。