[python] 환경 변수 값에 액세스하는 방법?

Python 응용 프로그램에서 액세스하려는 환경 변수를 설정했습니다. 그 가치는 어떻게 얻습니까?



답변

환경 변수는 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)


답변

키가 있는지 확인하려면 ( True또는 리턴 False)

'HOME' in os.environ

get()키를 인쇄 할 때도 사용할 수 있습니다 . 기본값을 사용하려는 경우에 유용합니다.

print(os.environ.get('HOME', '/home/username/'))

/home/username/기본값은 어디 입니까


답변

원래 질문 (첫 번째 부분)은 “Python에서 환경 변수를 확인하는 방법”이었습니다.

$ FOO가 설정되어 있는지 확인하는 방법은 다음과 같습니다.

try:
   os.environ["FOO"]
except KeyError:
   print "Please set the environment variable FOO"
   sys.exit(1)


답변

다음을 사용하여 환경 변수에 액세스 할 수 있습니다

import os
print os.environ

PYTHONPATH 또는 PYTHONHOME 환경 변수의 내용을 보려고 시도하면 두 번째 질문에 도움이 될 수 있습니다. 그러나 당신은 그것을 명확히해야합니다.


답변

환경 변수는 다음과 같습니다.

import os
print os.environ["HOME"]

괜찮은 답변이 나오기 전에 두 번째 포인트를 조금 더 살려야 할까봐 걱정됩니다.


답변

import os
for a in os.environ:
    print('Var: ', a, 'Value: ', os.getenv(a))
print("all done")

그러면 모든 환경 변수가 해당 값과 함께 인쇄됩니다.


답변

실제로 이것은 멀리 할 수 ​​있습니다 :

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'