El módulo OS en Python proporciona funciones para interactuar con el sistema operativo. OS viene bajo los módulos de utilidad estándar de Python. Este módulo proporciona una forma portátil de usar la funcionalidad dependiente del sistema operativo. os.path el módulo es un submódulo del módulo OS en Python utilizado para la manipulación de nombres de rutas comunes.
os.path.expandvars()
El método en Python se usa para expandir las variables de entorno en la ruta dada. Reemplaza las substrings de la forma $nombre o ${nombre} en la ruta dada con el valor del nombre de la variable de entorno .
Si la ruta dada contiene nombres de variables de entorno con formato incorrecto o variables de entorno que no existen, el os.path.expandvars()
método lo dejará sin cambios.
En Windows , también se admite la expansión %name% además de la expansión $name y ${name} .
Sintaxis: os.path.expandvars(ruta)
Parámetro:
ruta : un objeto similar a una ruta que representa una ruta del sistema de archivos. Un objeto similar a una ruta es una string o un objeto de bytes que representa una ruta.Tipo de devolución: este método devuelve una string que representa el parámetro con las variables de entorno expandidas.
Código #1: Uso del método os.path.expandvars()
# Python program to explain os.path.expandvars() method # importing os.path module import os.path # Path path = "$HOME/file.txt" # Expand the environment variables # with their corresponding # value in the given path exp_var = os.path.expandvars(path) # Print the given path with # environment variables expanded print(exp_var) # Change the value of # Environment variable 'HOME' os.environ["HOME"] = "/home/GeeksForGeeks" # Path path = "$HOME/Documents/file.txt" # Expand the environment variables # with their corresponding # value in the given path exp_var = os.path.expandvars(path) # Print the given path with # environment variables expanded print(exp_var) # Create an environment variable os.environ["USER"] = "ihritik" # Path path = "/home/${USER}/file.txt" # Expand the environment variables # with their corresponding # value in the given path exp_var = os.path.expandvars(path) # Print the given path with # environment variables expanded print(exp_var) # In the above example, # os.path.expandvars() method replaced # the environment variable 'HOME' and 'USER' # with their corresponding values
/home/ihritik/file.txt /home/GeeksForGeeks/Documents/file.txt /home/ihritik/file.txt
Código #2: uso del método os.path.expandvars() (en Windows)
# Python program to explain os.path.expandvars() method # importing os.path module import os.path # On Windows % name % expansions # are supported in addition to # $name and ${name} # Path 1 path1 = R"% HOMEPATH %\Directory\file.txt" # Path 2 path2 = R"C:\Users\$USERNAME\Directory\file.txt" # Path 3 path3 = R"${TEMP}\file.txt" # Expand the environment variables # with their corresponding # value in the given paths exp_var1 = os.path.expandvars(path1) exp_var2 = os.path.expandvars(path2) exp_var3 = os.path.expandvars(path3) # Print the given paths with # environment variables expanded print(exp_var1) print(exp_var2) print(exp_var3) # In the above example # os.path.expandvars() method # replaced the environment variables # 'HOMEPATH', 'USERNAME' and 'TEMP' # with their corresponding values
\\Users\\Hritik\\\Directory\\file.txt C:\\Users\\Hritik\\\Directory\\file.txt C:\\Users\\Hritik\\AppData\\Local\\Temp\\file.txt
Código #3: Si la variable de entorno no existe
# Python program to explain os.path.expandvars() method # importing os.path module import os.path # If the environment variable # is malformed or does not exist # then the given path will be # left unchanged # Path path = R"${MYHOME}/Directory/file.txt" # Expand the environment variables # with their corresponding # value in the given paths exp_var = os.path.expandvars(path) # Print the given path with # environment variables expanded print(exp_var) # As 'MYHOME' environment variable # does not exists so # os.path.expandvars() method # will return the given path # unchanged
${MYHOME}/Directory/file.txt
Referencia: https://docs.python.org/3/library/os.path.html