J'ai défini une variable d'environnement à laquelle je veux accéder dans mon application Python. Comment puis-je obtenir sa valeur?
python
environment-variables
Amit Yadav
la source
la source
.get()
peut également recevoir une valeur par défaut.Pour vérifier si la clé existe (retourne
True
ouFalse
)Vous pouvez également utiliser
get()
lors de l'impression de la clé; utile si vous souhaitez utiliser une valeur par défaut.où
/home/username/
est la valeur par défautla source
"HOME" in os.environ
ouos.environ.get('HOME')
?"HOME" in os.environ
vsos.environ.get('HOME') is None
. Comme vous pouvez le voir en premier, il est beaucoup plus lisible et confortable de travailler avec.La question initiale (première partie) était «comment vérifier les variables d'environnement en Python».
Voici comment vérifier si $ FOO est défini:
la source
"if 'FOO' not in os.environ: ..."
blocVous pouvez accéder aux variables d'environnement à l'aide de
Essayez de voir le contenu des variables d'environnement PYTHONPATH ou PYTHONHOME, cela sera peut-être utile pour votre deuxième question. Cependant, vous devez le clarifier.
la source
Quant aux variables d'environnement:
Je crains que vous ne deviez étoffer votre deuxième point un peu plus avant qu'une réponse décente ne soit possible.
la source
Cela affichera toutes les variables d'environnement ainsi que leurs valeurs.
la source
En fait, cela peut être fait:
Ou simplement:
Pour afficher la valeur dans le paramètre:
Ou:
Pour définir la valeur:
la source
str.format
est juste un ajout de fantaisie.>>> import os, pprint; pprint.pprint(list(os.environ.items()))
Si vous prévoyez d'utiliser le code dans un code d'application web de production, en
utilisant n'importe quel framework web comme Django / Flask, utilisez des projets comme envparse , en l'utilisant, vous pouvez lire la valeur comme votre type défini.
REMARQUE: autoenv de kennethreitz est un outil recommandé pour créer des variables d'environnement spécifiques au projet, veuillez noter que ceux qui utilisent
autoenv
veuillez garder le.env
fichier privé (inaccessible au public)la source
Il existe également un certain nombre d'excellentes bibliothèques. Envs, par exemple, vous permettra d'analyser des objets de vos variables d'environnement, ce qui est rad. Par exemple:
la source
Pour django voir ( https://github.com/joke2k/django-environ )
la source
Vous pouvez également essayer ceci
Tout d'abord, installez
python-decouple
l'importer dans votre fichier
Ensuite, obtenez la variable env
En savoir plus sur la bibliothèque python ici
la source