una - variables de entorno windows para python




¿Cómo accedo a las variables de entorno desde Python? (8)

Aquí hay una opción de una línea asumiendo que la importación se ha realizado:

for key in os.environ: print(key,':',os.environ[key])

o con formato:

for key in os.environ: print('{:>30} {:<4} {:}'.format(key,':',os.environ[key]))

Establecí una variable de entorno a la que quiero acceder en mi aplicación Python. ¿Cómo consigo este valor?


En Python 3:

#!/usr/bin/python3
import os
for param in os.environ.keys():
    print("%s: %s " % (param, os.environ[param]))

En realidad se puede hacer esto

import os

for item, value in os.environ.items():
    print('{}: {}'.format(item, value))

O simplemente:

for i, j in os.environ.items():
    print(i, j)

Para ver el valor en el parámetro:

print(os.environ['HOME'])

O:

print(os.environ.get('HOME')

Para establecer el valor:

os.environ['HOME'] = '/new/value'

La pregunta original (primera parte) era "cómo verificar las variables de entorno en Python".

Aquí le indicamos cómo verificar si $ FOO está configurado:

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

Puede acceder a las variables de entorno utilizando

import os
print os.environ

Intente ver el contenido de las variables de entorno PYTHONPATH o PYTHONHOME, tal vez esto sea útil para su segunda pregunta. Sin embargo debes aclararlo.


Se accede a las variables de entorno a través de os.environ

import os
print(os.environ['HOME'])

O puedes ver una lista de todas las variables de entorno usando:

os.environ

Como a veces es posible que necesite ver una lista completa!

# 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))

La instalación predeterminada de Python en Windows es C:\Python . Si quieres descubrirlo mientras ejecutas python puedes hacerlo:

import sys
print(sys.prefix)

para os.environ.get :

try:  
   env_value = os.environ.get("key_maybe_not_exist")
except KeyError: 
   print("Not exist environment value for %s" % "key_maybe_not_exist")

o:

if "key_maybe_not_exist" in os.environ:
    existed_env_value = os.environ["key_maybe_not_exist"]

para os.getenv :

existed_env_value = os.getenv("key_maybe_not_exist")

equivalente a:

existed_env_value = os.getenv("key_maybe_not_exist", default=None)

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

Eso imprimirá todas las variables de entorno junto con sus valores.







environment-variables