← retour aux snippets

os.path: expanduser et expandvars sur les chemins

Résoudre ~ et les variables d'environnement dans un chemin.

python filesystem #expanduser#expandvars

objectif

Résoudre ~ et les variables d’environnement dans un chemin.

code minimal

import os, os.path
p = os.path.expanduser("~/.config")
print(p != "~/.config" and isinstance(p, str))  # attendu: True

utilisation

import os, os.path
os.environ["APP"] = "x"
q = os.path.expandvars("$APP/data")
print(q.endswith("x/data"))

variante(s) utile(s)

import os.path
print(callable(os.path.expandvars) and callable(os.path.expanduser))

notes

  • Combinez avec pathlib.Path pour une manipulation plus sûre ensuite.
  • Attention au comportement Windows vs Unix pour les variables.