variable una para entorno definir crear configurar como agregar python environment-variables

una - ¿Cómo accedo a las variables de entorno desde Python?



variables de entorno windows 10 (11)

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 cuanto a las variables de entorno:

import os print os.environ["HOME"]

Me temo que tendrías que completar tu segundo punto un poco más antes de que sea posible una respuesta decente.


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)


Para comprobar si la clave existe (devuelve True / False )

"HOME" in os.environ

o (eliminado de python 3.x)

os.environ.has_key("HOME")

También puede usar get() al imprimir la clave; Útil si quieres usar un predeterminado. (para python 2.7.3)

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

donde /home/username/ es el predeterminado


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)


Si planea usar el código en un código de aplicación web de producción,
usando cualquier marco web como Django / Flask, use proyectos como envparse , usándolo puede leer el valor como su tipo definido.

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)

NOTA: kenethreitz''s autoenv es una herramienta recomendada para hacer variables de entorno específicas del proyecto, tenga en cuenta que aquellos que están usando autoenv mantienen el archivo .env privado (no disponible para el público)


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.