Puoi ottenere e impostare le variabili d'ambiente tramite os.environ
:
import os
user_home = os.environ["HOME"]
os.environ["PYTHONPATH"] = "..."
Ma poiché il tuo interprete è già in esecuzione, ciò non avrà alcun effetto. Faresti meglio a usare
import sys
sys.path.append("...")
che è l'array del tuo PYTHONPATH
verrà trasformato in all'avvio dell'interprete.
Se inserisci sys.path.append('dir/to/path')
senza controllare che sia già aggiunto, potresti generare un lungo elenco in sys.path
. Per questo, consiglio questo:
import sys
import os # if you want this directory
try:
sys.path.index('/dir/path') # Or os.getcwd() for this directory
except ValueError:
sys.path.append('/dir/path') # Or os.getcwd() for this directory
Non imposti PYTHONPATH
, aggiungi voci a sys.path
. È un elenco di directory in cui cercare i pacchetti Python, quindi puoi semplicemente aggiungere le tue directory a quell'elenco.
sys.path.append('/path/to/whatever')
Infatti, sys.path
viene inizializzato suddividendo il valore di PYTHONPATH
sul carattere separatore di percorso (:
su sistemi simili a Linux, ;
su Windows).
Puoi anche aggiungere directory usando site.addsitedir
, e quel metodo terrà conto anche di .pth
file esistenti all'interno delle directory passate. (Questo non sarebbe il caso delle directory specificate in PYTHONPATH
.)
PYTHONPATH finisce in sys.path, che puoi modificare in fase di esecuzione.
import sys
sys.path += ["whatever"]