В окнах для установки новой переменной = значение мы можем просто добавить ее в переменную среды. Тем не менее, в Linux выглядит немного жестко. это процедура, которой я следовал:
Откройте терминал и напишите:
vim ~/.bashrc
, затем нажмите клавиатуру «i» и затем определите переменную следующим образом:
Test_MyVariable='Tessst'
export Test_MyVariable
PATH=$PATH:Test_MyVariable/bin
[ 1111] затем :wq
после $ echo я вижу переменную:
echo $Test_MyVariable
и она возвращает:
Tessst
blockquote>но в моем возвышенном тексте он возвращает None.
import os new_v= os.environ.get('Test_MyVariable') print(new_v)
Нет
blockquote>Я даже проверил все доступные os.environ, но не могу найти свой
Test_MyVariable
. Кроме того, я также попробовал с~/.bash_profile
и~/.profile
и добавил переменную к ним, но тот же результат. Не могли бы вы мне сказать, что я делаю не так?
Удалить пробел после Test_MyVariable
new_v= os.environ.get('Test_MyVariable ')
Когда вы определяете переменную в ~/.bashrc
, эта переменная будет присутствовать, как только ~/.bashrc
будет «получено» (чтение). Это происходит только тогда, когда вы запускаете новую оболочку (например, когда вы открываете новый терминал).
Итак, если вы добавите новую строку в ваш файл .bashrc
, вам нужно будет открыть новый терминал и запустить там свой скрипт на python. Кроме того, вы можете запустить source ~/.bashrc
, чтобы поместить его в текущую оболочку.
Теперь, вы упоминаете о возвышенном, но на самом деле не объясняете, почему это актуально, поэтому я предполагаю, что вы как-то запускаете свой скрипт на Python внутри редактора. Предположительно, он имеет своего рода эмулятор оболочки. Если это так, то детали того, как и где определить переменную, будут зависеть от того, как Sublime устанавливает свою оболочку. Попробуйте следующее:
Просто закройте возвышенное окно, а затем снова откройте его и посмотрите, не перечитало ли оно теперь ваш .bashrc
.
Sublime вполне мог не читать .bashrc
вообще. Если вы запускаете sublime с какой-либо кнопки GUI, вам, вероятно, потребуется выйти из системы и снова войти в нее, прежде чем она сможет перечитать переменные.
Попробуйте открыть новый терминал и запустить sublime
(или любое другое имя команды для запуска sublime из командной строки). Видит ли она переменную тогда?