Ce face os.path.expanduser() și os.path.expandvars()
expanduser("~/documente") înlocuiește ~ cu directorul personal al utilizatorului (de exemplu /home/ana). Python nu face această înlocuire automat la open().
expandvars() înlocuiește $NUME sau ${NUME} (și %NUME% pe Windows) cu valorile variabilelor de mediu. Variabilele inexistente rămân neschimbate.
Parametri
| Parametru | Descriere |
|---|---|
cale |
Calea cu ~ sau variabile. |
Ce returnează
Un text.
Exemple
Exemplul 1: Directorul personal
import os
print(os.path.expanduser("~/documente/cv.pdf"))
Rezultat posibil (diferă la fiecare rulare)
/home/ana/documente/cv.pdf
Exemplul 2: Variabile de mediu
import os
os.environ["PROIECT"] = "/srv/magazin"
print(os.path.expandvars("$PROIECT/static/${PROIECT_NUME}/logo.png"))
os.environ["HOME"] = "/home/ana"
print(os.path.expanduser("~/poze"))
Rezultat
/srv/magazin/static/${PROIECT_NUME}/logo.png
/home/ana/poze
Greșeli frecvente
- Deschizi direct
open("~/note.txt")și primeștiFileNotFoundError. Aplică întâiexpanduser.
Comenzi înrudite
os.environ și os.getenv(): Citește și setează variabilele de mediu: chei API, setări, PATH.Path.resolve(), absolute(), relative_to() și verificările de cale: Transformă căile în căi absolute sau relative și le compară.os.path.abspath(), realpath(), normpath(), normcase(): Transformă o cale în cale absolută, rezolvă legăturile simbolice și curăță părțile ca „..”.