如何用VM和PyCharmconfiguration自定义的PYTHONPATH?

我正在使用IntelliJ与Python插件和远程解释器function与我的Vagrant虚拟机进行通信。 它正确设置远程解释器来使用我的虚拟机的解释器。 但是,我在我的虚拟机中使用了自定义的PYTHONPATH,并且我希望IntelliJ能够识别该path,并在开发时将这些模块包含在该path中。

如何configurationIntelliJ / PyCharm的远程解释器在VM上使用自定义的PYTHONPATH?

编辑您的PYTHONPATH或修复代码检查导入解决问题的说明如下:

  1. 打开首选项(在Mac上,键盘快捷键是⌘, )。

如何从菜单进入设置

  1. Project: Your Project Name左侧的边栏中查找Project Structure

  2. 在右侧边栏添加或删除模块

在Pycharm 4.5中的项目结构设置

编辑 :我已经更新PyCharm 4.5这个屏幕截图

对于PyCharm 5(或2016.1),您可以:

  1. select首选项>项目解释器
  2. 在解释器select器的右边有一个“…”button,点击它
  3. select“更多…”
  4. popup一个新的“Project Interpreters”窗口
  5. select最右边的button(名称为“显示所选解释器的path”)
  6. popup“解释器path”窗口
  7. 点击“+”button>select你想要的PYTHONPATH目录(包含python模块的文件夹)并点击OK
  8. 完成! 好好享受!

在这里输入图像说明

在这里输入图像说明

在这里输入图像说明 在这里输入图像说明

对我来说,解决的办法是去

 Run > Edit Configuration > Defaults > Python 

然后pipe理

  • “添加内容的根到PYTHONPATH”和
  • “将源根目录添加到PYTHONPATH”

checkbox,以及设置“工作目录”字段。

如果你已经设置了自己的运行/debuggingconfiguration,那么你可能要去

 Run > Edit Configuration > Python > [Whatever you called your config] 

并在那里编辑。

我的问题是,我想我的整个库包含在我的PyCharm 2016.2项目,但只有一个子文件夹是实际的Python源代码根。 我通过右键单击文件夹然后添加它作为“源根”

 Mark directory as > Source Root 

然后取消select“添加内容根目录到PYTHONPATH”,并在运行/debuggingconfiguration菜单中选中“添加源根目录到PYTHONPATH”。 然后,我通过做检查文件夹path:

 import sys logger.info(sys.path) 

这个结果:

 [ '/usr/local/my_project_root/my_sources_root', '/usr/local/my_project_root/my_sources_root', '/usr/lib/python3.4', '/usr/lib/python3.4/plat-x86_64-linux-gnu', '/usr/lib/python3.4/lib-dynload', '/usr/local/lib/python3.4/dist-packages', '/usr/lib/python3/dist-packages' ] 

然而,没有修复它说:

 [ '/usr/local/my_project_root/my_sources_root', '/usr/local/my_project_root', <-- NOT WANTED '/usr/lib/python3.4', '/usr/lib/python3.4/plat-x86_64-linux-gnu', '/usr/lib/python3.4/lib-dynload', '/usr/local/lib/python3.4/dist-packages', '/usr/lib/python3/dist-packages' ] 

这意味着我得到了包括项目根文件夹。 这弄糟了我的path。

根据我的经验,使用PYTHONPATHvariables通常是错误的方法,因为它在Windows上不能很好地与VENV一起玩。 装载PYTHON将通过预先将PYTHONPATH添加到path来准备path,这可以使您精心准备的Venv优先获取全局网站包。

在相关的site-packages目录中包含一个pythonpath.pth文件(尽pipe小心定制的python偶尔会在不同的位置查找它们,例如enthought和python.exe在.pth文件中查找同一个目录),而不是使用PYTHONpath每个虚拟环境。 这将像一个PYTHONPATH,只是它将是特定于python安装,所以你可以有一个单独的每个python安装/环境。 如果你只是把VENV的python作为你的python安装,Pycharm与VENVpowershell集成。

看到例如这个问题的更多细节.pth文件….

那么你可以通过翻译的对话框来做到这一点。 点击你正在使用的解释器,在它下面,你会看到两个标签,一个叫Packages,另一个叫Path。

点击path,并添加您的VMpath。

在pycharm 5中,按照这个, https: //www.jetbrains.com/pycharm/help/configuring-python-interpreter-for-a-project.html

1)打开设置对话框,然后点击项目翻译页面。
2)在“项目”窗格中,select所需的项目。
3)对于选定的项目,从可用的Python解释器和虚拟环境列表中selectSDK。