variables d’environnement Python

Lorsque vous développez dans différents environnements, vous souhaiterez peut-être spécifier différentes valeurs de configuration pour chaque environnement. L’ordinateur sur lequel vous avez développé une application ne sera pas le même que celui sur lequel vous déployez une application.

C’est là que les variables d’environnement entrent en jeu !

Dans ce guide, nous allons parler de ce que sont les variables d’environnement et de la façon dont elles peuvent être utilisées. Nous allons parcourir un exemple de variables d’environnement Python pour vous aider à démarrer.

Qu’est-ce qu’une variable d’environnement ?

Une variable d’environnement est un variable dont la valeur est définie en dehors d’un programme.

Les variables d’environnement vous permettent de définir différentes valeurs pour une variable en fonction de l’environnement dans lequel vous construisez une application .

Pourquoi les variables d’environnement sont-elles utilisées ?

De nombreuses applications, en particulier les applications collaboratives, ont plusieurs environnements différents. Un environnement sera utilisé pour les tests, un autre pour la production et encore un autre pour le développement. Ces environnements ont souvent des valeurs de configuration différentes qui doivent être définies.

Les clés d’interface de programmation d’application (API) que vous utilisez en production ne seront probablement pas les mêmes que celles que vous utilisez sur votre ordinateur local. Vous pouvez utiliser des données factices sur votre machine locale lors de la création d’une application, mais cela n’est pas approprié dans un environnement de production.

La valeur d’une variable d’environnement peut être modifiée sans altérer votre programme. Cela signifie que vous pouvez facilement déployer des modifications dans votre code sans avoir à substituer des valeurs de configuration à un nouvel environnement.

81 % des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi dans le domaine technique après avoir assisté à un bootcamp . Soyez jumelé à un bootcamp aujourd’hui.

Le diplômé moyen d’un bootcamp a passé moins de six mois en transition de carrière, du démarrage d’un bootcamp à la recherche de son premier emploi.

Les variables d’environnement sont également utilisées pour des fins de sécurité. √âcrire des clés API et des valeurs de configuration dans un programme principal peut être risqué car tout le monde sur un projet peut les voir. Si vous indiquez une valeur dans une variable d’environnement, seuls votre programme et le développeur qui a défini la variable pourront y accéder.

Comment définir une variable d’environnement

Commençons par créer une variable d’environnement. Une variable d’environnement ne durera que jusqu’à la fin de votre session Python. Cela signifie qu’une fois que vous fermez votre interpréteur Python, la variable sera réinitialisée dans vos scripts Python.

Nous construisons une application qui utilise l’API Airtable. Nous allons partager notre code sur GitHub afin de ne pas‚Äô Je ne veux pas que notre clé API soit montrée au public. Pour ajouter notre clé API à notre code sans la partager publiquement, nous allons utiliser une variable d’environnement.

La première étape consiste à importer la bibliothèque os :

import os

Cette bibliothèque contient le code pour travailler avec les variables d’environnement Python. Ensuite, nous allons pour définir une variable d’environnement :

Os.environ["AIRTABLE_KEY‚"] = "VOTRE _API_KEY‚"

Ce code définira une variable appelée AIRTABLE_KEY. Sa valeur est YOUR_API_KEY. L’attribution d’une variable d’environnement fonctionne de la même manière que vous modifiez les valeurs dans un dictionnaire.

Vous devez spécifier le nom de la variable que vous souhaitez définir ou modifier, suivie d’un signe égal, puis la valeur que vous souhaitez attribuer à la variable.

La même syntaxe peut être utilisée pour modifier une variable d’environnement :

os.environ["AIRTABLE_KEY‚"] = "YOUR_API_KEY_2‚"

La valeur de notre clé API a changé en YOUR_API_KEY_2.

Comment récupérer une variable d’environnement

Nous venons de définir une variable d’environnement. La question qui vous vient à l’esprit est probablement : comment pouvons-nous récupérer la valeur ? C’est là que l’on peut utiliser la méthode os.environ.get() .

Récupérons la valeur de notre AIRTABLE_KEY variable :

Nous avons indiqué vouloir récupérer la valeur de la variable d’environnement AIRTABLE_KEY . Nous attribuons cette valeur à une nouvelle variable appelée api_key, puis l’imprimons sur la console.

Notre code renvoie : YOUR_API_KEY_2.

Vous pouvez récupérer une liste de toutes les variables d’environnement que vous avez définies en imprimant le contenu de os.environ sur la console :

print(os.environ)

"Python.Engineering est entré dans ma vie quand j’en avais le plus besoin et m’a rapidement aidé à correspondre avec un bootcamp. Deux mois après avoir obtenu mon diplôme, j’ai trouvé l’emploi de mes rêves qui correspondait à mes valeurs et à mes objectifs dans la vie !"

Venus, ingénieur logiciel chez Rockbot

Il existe un certain nombre de variables d’environnement par défaut définies dans Python. Cela signifie que l’impression de toutes les variables d’environnement définies dans un programme Python peut renvoyer une longue liste.

Comment supprimer une variable d’environnement

Vous pouvez supprimer des variables d’environnement dans un projet Python. Cela peut être accompli en utilisant la méthode os.environ.pop(). Supprimons notre environnement AIRTABLE_KEY variable :

os.environ.pop("AIRTABLE_KEY‚")

Ce code supprime le AIRTABLE_KEY variable d’environnement.

Il n’est pas pratique de le faire si vous souhaitez effacer plusieurs variables d’environnement. Si vous démarrez une nouvelle instance d’un projet ou souhaitez réinitialiser toutes les variables d’environnement dans votre session, vous pourriez avoir des dizaines de valeurs à remplacer.

C’est là que la méthode clear() est utile. Supprimons toutes les variables d’environnement dans notre session :

Ce code efface les valeurs de toutes les variables d’environnement. Ensuite, il imprime une liste de toutes les variables d’environnement dans notre session :

{}

Python définit des variables d’environnement par défaut qui peut être nécessaire à votre projet.

Vous ne devez utiliser la méthode clear() que si vous êtes s√ªr de n’avoir besoin d’aucune des variables d’environnement dans un programme plus. L’utilisation de la méthode pop() est préférable car elle est plus spécifique.

Comment définir des variables d’environnement à l’aide de Dotenv

La bibliothèque dotenv fournit un certain nombre de fonctions de gestion des variables d’environnement.

Dotenv permet notamment de lire les variables d’environnement à partir d’un fichier. Cela signifie que vous n’avez pas besoin de les déclarer dans un shell Python.

La lecture des variables d’environnement à partir d’un fichier de module est plus pratique si vous avez beaucoup de valeurs à lire. Cela facilite également la gestion des variables si vous devez modifier leurs valeurs.

Pour travailler avec le package dotenv, vous devez l’installer. Vous pouvez le faire en utilisant easy_install ou pip.

Commençons par définir une variable d’environnement. Pour ce faire, nous allons créer un fichier appelé .env. Nous pouvons créer ce fichier depuis la ligne de commande en utilisant la commande touch :

touch .env

Ouvrez votre fichier .env et ajoutez le contenu suivant :

AIRTABLE_KEY=YOUR_API_KEY_3

Les variables d’environnement sont affectées comme n’importe quelle autre variable. Sur le côté gauche du signe égal, vous avez le nom de la variable. Sur le côté droit, vous avez la valeur que cette variable va stocker. Ces deux valeurs sont séparés par un signe égal.

Ensuite, nous allons charger nos variables dans un fichier :

Ce code importe la méthode load_dotenv() de la bibliothèque dotenv et s’exécute ce. Cela lira toutes les variables de notre fichier .env dans notre environnement.

Ensuite, essayons de récupérer notre variable à l’aide de la bibliothèque os :

Notre code renvoie : YOUR_API_KEY_3. Notre clé API a été définie dans notre fichier .env. La méthode load_dotenv() a chargé nos variables d’environnement et les a rendues accessibles à l’aide de la méthode os.environ.

Conclusion

Les variables d’environnement sont des valeurs prédéfinies qui sont utilisées pour configurer une valeur en dehors d’un programme. Elles sont couramment utilisées pour configurer différents environnements, d’o√π leur nom.

Les variables d’environnement sont un moyen sécurisé de définir des valeurs secrètes. Vous ne voudriez pas ajouter directement une clé API dans votre code d’application car elle serait lisible par tous ceux qui voient votre application. Vous pouvez le définir dans une variable d’environnement afin que seuls vous et votre programme puissiez voir la valeur.

Vous êtes maintenant prêt à commencer à travailler avec des variables d’environnement dans du code Python comme un professionnel !