Python 如何在PyCharm中正确设置pipenv?

Python 如何在PyCharm中正确设置pipenv?,python,pycharm,virtualenv,Python,Pycharm,Virtualenv,我需要krakenex在一个项目中,所以我用 import krakenex 我有一个版本的krakenex /Users/x/Library/Python/3.6/lib/Python/site-packages 。当我执行脚本和 print(krakenex) 它向我展示了上面提到的路径 将来,我想使用我安装的软件包中的模块,例如 pipenv install krakenex 优先考虑 我如何做到这一点?将虚拟环境的路径添加到sys路径就足够了,还是有更优雅的方法?您应该将项目解释器

我需要krakenex在一个项目中,所以我用

import krakenex
我有一个版本的krakenex

/Users/x/Library/Python/3.6/lib/Python/site-packages

。当我执行脚本和

print(krakenex)
它向我展示了上面提到的路径

将来,我想使用我安装的软件包中的模块,例如

pipenv install krakenex
优先考虑


我如何做到这一点?将虚拟环境的路径添加到sys路径就足够了,还是有更优雅的方法?

您应该将项目解释器指向virtualenv python bin。因此,在PyCharm文件->设置->项目:项目名称->项目解释器中,应该显示一个显示项目解释器的窗口


在顶部下拉列表的旁边是一个gear,您需要添加Local并导航到virtualenvs python bin。类似于
virtualenvs/virtualenv\u name/bin/python
。那么你的项目应该指向正确的地方

要添加更多关于如何使用pipenv设置PyCharm的说明:

  • 在项目目录中执行

    pipenv--venv

  • 保存输出,稍后将引用此路径

  • 在PyCharm中,打开项目设置,然后选择项目解释器

  • 单击添加Python解释器>系统解释器>选择Python解释器并粘贴第一个命令的输出,将/bin/Python追加到末尾。


  • 请注意,您需要使用命令行来安装任何软件包,因为PyCharm目前在其软件包管理工具中不支持pipenv。但是,我对这种方法没有任何问题。

    PyCharm从版本开始就支持pipenv。当您使用PIPNV文件打开项目时,PyCharm 2018.2将自动创建PIPNV,并使使用PIPNV创建新项目变得容易

    对于现有项目

    如前所述,对于具有
    Pipfile
    的现有项目,当您打开Python文件时,PyCharm将询问您是否要从
    Pipfile.lock
    安装依赖项

    对于新项目

    对于新项目,可以使用“项目解释器”面板创建基于
    Pipenv
    的项目解释器


    确保更新PyCharm。我更新到

    pipenv的导出路径:
    $Export path=“$path:Users/{user\u name}/.local/bin”


    PyCharm随后将使用dropbox在新环境下自动检测pipenv。并查看完整的博客帖子。

    这非常有效!还有没有办法将pycharm指向pipenv或pip,以便通过pycharm修复操作安装新模块?@Vibin pycharm将使用链接到项目解释器的
    pip
    。上面的答案应该适用于您从PyCharm中安装东西。@AlmogCohen不幸的是,PyCharm不使用pipenv安装新模块,即使项目解释器链接到pipenv环境。您这样做了吗,而且我的所有运行配置都不再有效:/必须在每个配置中编辑解释器以指向virtualenv@AlmogCohen他们将在下一个版本中添加它,或者如果您想使用早期的access版本,现在就有了它。考虑标记作为解决方案,不再是这种情况,请检查PyPrimo中PiPeV的支持是2018.3的荒谬。PyCharm甚至不检查是否已经存在一个virtualenv,它只是创建了一个新的virtualenv(它应该使用pipenv--venv进行检查)。此外,pipenv尊重WORKON_HOME env变量,该变量不能在PyCharm中设置。@Toby,我想现在可以检查了。我使用的是2018.3.1,它实际上是在寻找我之前使用
    pipenv
    @lmiguelvargasf Nice创建的虚拟环境!同时,我还发现“创建新项目”和“打开”之间有区别。后者在默认位置进行签入。我将其与我的训练本垒得分进行了符号链接,这很有效。@Imiguelvargasf不再是这种情况,请检查