如何在PyCharm中设置环境变量?

lmi*_*asf 46 python django environment-variables

我已经开始在Django项目中工作了,我想设置一些环境变量,而不必手动设置它们或者有一个bash文件来源.

我想设置以下变量:

export DATABASE_URL=postgres://127.0.0.1:5432/my_db_name
export DEBUG=1
# there are other variables, but they contain personal information
Run Code Online (Sandbox Code Playgroud)

在你开始downvoting之前,我已经读过这个,但这并没有解决我想要的问题.另外,我尝试在Preferences - > Build,Execution,Deployment - > Console - > Python Console/Django Console中设置环境变量,但是它设置了解释器的变量.

Jor*_*ley 85

您可以在Pycharm的运行配置菜单中设置环境变量.

  1. 在右上角和cick中打开"运行配置"选择器 Edit Configurations...

    编辑配置...

  2. 查找Environmental variables并单击...

    环境变量

  3. 添加或更改变量,然后单击 OK

    编辑环境变量

您可以访问你的环境变量os.environ

import os
print(os.environ['SOME_VAR'])
Run Code Online (Sandbox Code Playgroud)

  • 我试过这个方法,但PyCharm没有选择定义的env var(我特意尝试设置DATABASE_URL).看起来像PyCharm的bug. (3认同)
  • 哦,我只是想在那条线上打字,三点看起来是灰色的,所以我什至没想到点击它。 (2认同)
  • PyCharm中的@LNI有两个地方可以设置env变量。一个用于运行环境(它设置Joran的显示方式),我们还可以设置将在Pycharm中用于控制台的变量(并在此处设置Preferences-> Build,Execution,Deployment-> Console-> Python Console) (2认同)
  • 这对我有用。不过必须先重新启动我的解释器。 (2认同)

lmi*_*asf 60

我能够使用名为EnvFile的PyCharm插件来解决这个问题.这个插件基本上允许设置环境变量来运行一个或多个文件的配置.

安装非常简单:

首选项 > 插件 > 浏览存储库... > 搜索"Env文件" > 安装插件.

然后,我在我的项目根目录中创建了一个文件,environment.env其中包含:

DATABASE_URL=postgres://127.0.0.1:5432/my_db_name
DEBUG=1
Run Code Online (Sandbox Code Playgroud)

然后我去了Run - > Edit Configurations,然后我按照下一张图片中的步骤操作:

设置环境变量

3,我选择了文件environment.env,然后我可以点击PyCharm中的播放按钮,一切都像魅力一样.

  • @lmiguelvargasf我不能完全感谢你的回答.看起来Pycharm无法在.bashrc中获取env vars源代码(我在Linux上).这个插件为我节省了很多时间,因为我可以使用postactivate文件作为源. (5认同)
  • @krinker,当您浏览文件时,请按 `cmd` + `shift`+`.` 显示隐藏文件。 (3认同)
  • 2017年在这里工作.谢谢! (2认同)

Jar*_*rad 36

原来的问题是:

如何在PyCharm中设置环境变量?

两个最受欢迎的答案告诉您如何为 PyCharm运行/调试配置设置环境变量- 在“环境变量”中手动输入它们或使用 EnvFile 插件。

使用 PyCharm 多年后,我了解到还有其他关键区域可以设置 PyCharm 环境变量。EnvFile 不适用于这些其他区域!

这是其他地方(在“设置”中):

  • 工具 > 终端 > 环境变量
  • 语言和框架 > Django > 环境变量
  • 构建、执行、部署 > 控制台 > Python 控制台 > 环境变量
  • 构建、执行、部署 > 控制台 > Django 控制台 > 环境变量

当然,还有已经提到的运行/调试配置。


kjo*_*ter 7

这是您可以在pycharmflask/django 控制台中获取 .env(和 .flaskenv)文件的方法。当然,它也适用于普通的 python 控制台。

  1. 在你的环境中执行pip install python-dotenv(与pycharm指向的相同)。

  2. 转到:设置 > 构建、执行、部署 > 控制台 > Flask/django 控制台

  3. “启动脚本”中,在顶部附近包含类似的内容:

    from dotenv import load_dotenv
    load_dotenv(verbose=True)

.env 文件可能如下所示: export KEY=VALUE

export是否包含dotenv 读取它并不重要。

作为替代方案,您还可以在相应虚拟环境的激活 shell 脚本中获取 .env 文件。


Nin*_*off 6

现在已将此功能添加到IDE中(正在运行Pycharm 2018.3)

只需单击EnvFile运行配置中的选项卡,单击Enable EnvFile并单击+图标以添加环境文件

以光荣的物质主题为例

更新:基本上与@imguelvargasf的答案相同,但是默认情况下已为我启用了该插件。

  • 该解决方案不适用于 pycharm 2021 (12认同)
  • 他安装了“EnvFile”插件。 (9认同)
  • 我是 pycharm 2019,我没有看到“EnvFile”选项卡。这在Python配置中可用吗(你的截图是DjangoServer)? (3认同)