Невозможно получить доступ к переменной окружения в Python в Pycharm - PullRequest
0 голосов
/ 27 сентября 2019

Я пытаюсь получить доступ к переменной окружения, которая экспортируется в файл ~ / .bashrc , как показано ниже.

export ENV=local и source ~/.bashrc.Я вижу значение local , когда я нажимаю echo $ENV в терминале.

Но в моем проекте на python (который привязан к конкретному virtualenv в Pycharm), когда я пытаюсь сделать os.environ['ENV'] и запустите скрипт, щелкнув по нему правой кнопкой мыши и запустив, он выбрасывает KeyError .

Я не вижу ENV в выводе, когда пытаюсь сделать os.environ.

В чем может быть проблема?Я думаю, что virtualenv не должен вызывать каких-либо проблем.Это правда?

OS: Ubuntu 18.04
Python: 3.7.4

Ответы [ 2 ]

0 голосов
/ 27 сентября 2019

Оказалось, что каждый раз, когда я щелкаю правой кнопкой мыши и запускаю скрипт в Pycharm, он создает RunConfiguration, которая содержит только одну переменную ENVIRONMENT, равную PYTHONBUFFERED=1.

И я не смог получить доступ ни к одной из других переменных.Краткосрочное разрешение состоит в том, что я добавил переменную среды ENV=local в эту RunConfiguration.

, и она сработала.

0 голосов
/ 27 сентября 2019

Попробуйте:

export ENV="local"

Добавьте эту строку в последний файл ~ / .bashrc , а затем перезапустите терминал, чтобы открыть python.

Теперь:

import os
os.environ['ENV']

Это будет работать с ожидаемым результатом.Надеюсь, это поможет:)

...