답변:
환경 변수는 os.environ을 통해 액세스됩니다
import os
print(os.environ['HOME'])
또는 다음을 사용하여 모든 환경 변수 목록을 볼 수 있습니다.
os.environ
때때로 당신은 완전한 목록을 볼 필요가 있습니다!
# using get will return `None` if a key is not present rather than raise a `KeyError`
print(os.environ.get('KEY_THAT_MIGHT_EXIST'))
# os.getenv is equivalent, and can also give a default value instead of `None`
print(os.getenv('KEY_THAT_MIGHT_EXIST', default_value))
Windows에서 Python 기본 설치는 입니다 C:\Python
. 파이썬을 실행하는 동안 알고 싶다면 다음을 수행하십시오.
import sys
print(sys.prefix)
.get()
기본값을 지정할 수도 있습니다.
키가 있는지 확인하려면 ( True
또는 리턴 False
)
'HOME' in os.environ
get()
키를 인쇄 할 때도 사용할 수 있습니다 . 기본값을 사용하려는 경우에 유용합니다.
print(os.environ.get('HOME', '/home/username/'))
/home/username/
기본값은 어디 입니까
"HOME" in os.environ
또는 os.environ.get('HOME')
?
"HOME" in os.environ
vs os.environ.get('HOME') is None
입니다. 먼저 알 수 있듯이 작업하기가 훨씬 더 읽기 쉽고 편안합니다.
원래 질문 (첫 번째 부분)은 "Python에서 환경 변수를 확인하는 방법"이었습니다.
$ FOO가 설정되어 있는지 확인하는 방법은 다음과 같습니다.
try:
os.environ["FOO"]
except KeyError:
print "Please set the environment variable FOO"
sys.exit(1)
"if 'FOO' not in os.environ: ..."
블록 보다 읽기 어려워 보입니다
다음을 사용하여 환경 변수에 액세스 할 수 있습니다
import os
print os.environ
PYTHONPATH 또는 PYTHONHOME 환경 변수의 내용을 보려고 시도하면 두 번째 질문에 도움이 될 수 있습니다. 그러나 당신은 그것을 명확히해야합니다.
실제로 이것은 멀리 할 수 있습니다 :
import os
for item, value in os.environ.items():
print('{}: {}'.format(item, value))
또는 간단히 :
for i, j in os.environ.items():
print(i, j)
매개 변수의 값을 보려면 다음을 수행하십시오.
print(os.environ['HOME'])
또는:
print(os.environ.get('HOME')
값을 설정하려면
os.environ['HOME'] = '/new/value'
str.format
그냥 멋진 추가입니다.
>>> import os, pprint; pprint.pprint(list(os.environ.items()))
Django / Flask와 같은 웹 프레임 워크를 사용하여 프로덕션 웹 애플리케이션 코드에서 코드를 사용 하려는 경우 envparse 와 같은 프로젝트 를 사용하여 값을 정의 된 유형으로 읽을 수 있습니다.
from envparse import env
# will read WHITE_LIST=hello,world,hi to white_list = ["hello", "world", "hi"]
white_list = env.list("WHITE_LIST", default=[])
# Perfect for reading boolean
DEBUG = env.bool("DEBUG", default=False)
참고 : kennethreitz의 autoenv는 사용하는 사람이 있다고, 제발 노트 프로젝트 특정 환경 변수를 만들기위한 권장 도구입니다 autoenv
보관하십시오 .env
개인 (대중에게 접근 할 수없는) 파일을
django의 경우 ( https://github.com/joke2k/django-environ 참조 )
$ pip install django-environ
import environ
env = environ.Env(
# set casting, default value
DEBUG=(bool, False)
)
# reading .env file
environ.Env.read_env()
# False if not in os.environ
DEBUG = env('DEBUG')
# Raises django's ImproperlyConfigured exception if SECRET_KEY not in os.environ
SECRET_KEY = env('SECRET_KEY')
당신은 또한 이것을 시도 할 수 있습니다
먼저 설치 python-decouple
pip install python-decouple
파일로 가져 오기
from decouple import config
그런 다음 env 변수를 가져옵니다
SECRET_KEY=config('SECRET_KEY')
파이썬 라이브러리에 대한 자세한 내용은 여기를 참조하십시오.