Sto lavorando su Debian Jessie con Python 2. Perché non è possibile vedere le variabili di ambiente di Python environ
visibili in bash?Perché Python non può vedere le variabili d'ambiente?
# echo $SECRET_KEY
xxx-xxx-xxxx
# python
>>> from os import environ
>>> environ["SECRET_KEY"]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/root/.virtualenvs/prescribing/lib/python2.7/UserDict.py", line 23, in __getitem__
raise KeyError(key)
KeyError: 'SECRET_KEY'
ho impostato queste variabili di ambiente utilizzando /etc/environment
- non so se questo è rilevante:
SECRET_KEY=xxx-xxx-xxx
ho dovuto correre per arrivare source /etc/environment
bash a vederli, che mi è sembrato strano.
UPDATE: printenv SECRET_KEY
non produce nulla, quindi suppongo che SECRET_KEY
non sia una variabile di ambiente.
Questa non è una variabile di ambiente; è solo una variabile di shell finché non la si esporta. –
Davvero? Pensavo che '/ env/environment' fosse utile per impostare le variabili di ambiente - è sbagliato? – Richard
L'uso di 'source/env/environment' imposta solo variabili nella shell, non variabili di ambiente accessibili dai processi figli. –