Per eseguire con Python setting e getting di variabili d’ambiente si può operare usando il modulo os. Per maggiori dettagli sul funzionamento di questo modulo, facciamo riferimento alla documentazione ufficiale: https://docs.python.org/3/library/os.html
Set e Get di variabili d'ambiente
Diamo anzitutto uno sguardo al seguente codice
import os
# Set environment variables
os.environ['API_USER'] = 'username'
os.environ['API_PASSWORD'] = 'secret'
# Get environment variables
USER = os.getenv('API_USER')
PASSWORD = os.environ.get('API_PASSWORD')
# Getting non-existent keys
FOO = os.getenv('FOO') # None
BAR = os.environ.get('BAR') # None
BAZ = os.environ['BAZ'] # KeyError: key does not exist.
Per quanto riguarda l’operazione di setting delle variabili d’ambiente ci viene in aiuto os.environ
.
Per eseguire il getting delle variabili d’ambiente possiamo rivolgerci invece a due metodi: os.getenv()
e os.environ.get()
. Questi metodi li possiamo usare intercambiabilmente, infatti os.getenv()
non è altro che il wrapper (https://hg.python.org/cpython/file/6671c5039e15/Lib/os.py#l646) di os.environ.get()
.
È invece importante notare che, mentre l’uso dei metodi os.getenv()
e os.environ.get()
per richiamare variabili d’ambiente inesistenti restituisce None
, il riferirsi ad una key inesistente nel dizionario mediante l’utilizzo di os.environ[]
, viene sollevata l’eccezione KeyError: key does not exist
.