当前位置: 首页 > 知识库问答 >
问题:

为什么PyCharm有时不使用系统环境变量作为虚拟环境的路径?

葛驰
2023-03-14

使用PyCharm,我已经配置了一个虚拟环境。这导致了一些与PATH的令人困惑的交互。当我查看文件路径的环境变量时,我发现:

print '##### PATH'
print os.environ['PATH']

我看到以下输出:

##### PATH
 /usr/bin:/bin:/usr/sbin:/sbin:/Users/username/.virtualenvs/venv/bin

这让我很困惑,因为我已经通过下面的对话框明确地告诉PyCharm使用系统环境变量:

单击“显示”时,我看到PATH的定义不同:

我不明白的是:

>

  • 使用 charm 从 shell 运行 PyCharm 会导致成功设置 PATH:

    ##### PATH
    /Users/username/.virtualenvs/username/bin:/Users/username/go/dependencies/bin:/usr/local/go/bin:/usr/local/go/bin:/usr/local/bin:.... etc
    

    这在 PyCharm 中没有发生任何其他配置 - 只需从 shell 重新启动它会导致 PATH 的行为不同

    我也可以在PyCharm中手动定义PATH变量(到父环境变量选项卡中给出的值),它也可以正常工作

    但是由于某种原因,PyCharm 没有从我的父环境变量中提取 PATH 变量,即使它存在并且似乎已正确包含(没有上述两种解决方法中的任何一种)。

    为什么PyCharm要这样做,我需要做些什么来正确地“包含父环境变量”?

    我在OS:X上使用PyCharm 5.0.4和bash shell。

  • 共有2个答案

    慕俊迈
    2023-03-14

    如果要继承这些变量,需要从命令行启动python。

    要创建快捷方式,请选择“工具

    长孙知
    2023-03-14

    这是一个已知的bug在py魅力和OS X:https://youtrack.jetbrains.com/issue/PY-17816

     类似资料:
    • 我正在使用bitnami Django堆栈。不使用虚拟环境时,WSGI工作正常 但是我使用在root中安装了虚拟环境,现在WSGI不适用于虚拟环境项目 我的apache配置文件是 我的wsgi文件是 apache日志是: mod_wsgi(pid=4070):处理wsgi脚本“/opt/bitnami/apps/run/live_cybrhome时发生异常。wsgi’。 回溯(最近一次呼叫最后一次

    • 我已经创建了一个Python虚拟环境,并通过执行以下操作来激活它: 将提示转换为: 现在,每当我运行一个python包或尝试安装一个时,系统似乎忽略了它在虚拟环境中的事实,并在系统范围内执行操作: 当我尝试安装不在系统上的新软件包时,也会发生同样的情况;它将它们安装到系统文件(即/usr/bin)而不是虚拟环境中。 我的虚拟环境怎么了?如何让它忽略系统文件并在环境中执行所有操作? 我看过这个问题,

    • 问题内容: Java是否具有默认的“系统环境变量”,当我们设置它时将始终读取/附加它?/ etc似乎仅适用于TOMCAT / JBOSS等。 我不想通过Java系统属性(通过-Dprop1 = value1 -Dprop2 = value2传递)来设置它,因为它涉及shell / batch脚本。 它应可跨操作系统使用,例如Windows中的双击jar文件。 它应该可以在不同的JRE(Sun,IB

    • 变量是计算机系统用于保存可变值的数据类型,我们可以直接通过变量名称来提取到对应的变量值。在 Linux 系统中,环境变量是用来定义系统运行环境的一些参数,比如每个用户不同的家目录(HOME)、邮件存放位置(MAIL)等。 值得一提的是,Linux 系统中环境变量的名称一般都是大写的,这是一种约定俗成的规范。 我们可以使用 env 命令来查看到 Linux 系统中所有的环境变量,执行命令如下: [r

    • 当我写“D:\pythonproject\first\u django”时,我想在新文件夹中激活venv 此外,当我在cmd get中运行此命令“pip install virtualenv”时,我安装了venv“已满足要求:c:\users\sam\appdata\local\programs\python\python310\lib\site packages(20.13.0)中的virtua

    • 问题内容: 我对此不清楚。当我运行Java App或在小程序查看器中运行小程序时(在IDE环境中), 给我的含义与env变量中定义的CLASSPATH 相同。 但是,当我将applet部署到Web服务器并从与客户端相同的计算机上访问它时,两者的结果不同。(仅指向JRE主页,并返回null)。 还有其他一些让我感到奇怪的事情: 对于小程序部分,即env var JAVA_HOME,在将小程序部署到浏