Python os.path.expandvars() 方法用于扩展路径字符串中的环境变量。它采用一个路径,其中包含格式为 $VARIABLE 或 ${VARIABLE} 的环境变量,并将其替换为环境中的相应值。
如果未定义路径字符串中引用的环境变量,则 expandvars() 方法将引用替换为空字符串。如果路径字符串不包含任何环境变量引用,该方法将返回原始路径字符串不变。
语法
以下是 Python os.path.expandvars() 方法的基本语法 -
os.path.expandvars(path)
参数
此方法接受一个字符串作为参数,该参数表示环境变量应在其中展开的路径。
返回值
该方法返回一个字符串,该字符串表示扩展了环境变量的路径。
例在下面的示例中,我们通过将 “$HOME” 环境变量替换为相应的值来扩展给定的文件路径 “path” - 使用 expandvars() 方法的用户主目录 -
import os
path = "$HOME/Documents/file.txt"
expanded_path = os.path.expandvars(path)
print(expanded_path)
输出
获得的输出如下 -
C:\Users\Lenovo/Documents/file.txt
例
在这里,我们通过将 “%USERNAME%” 环境变量替换为相应的值(即用户名 - )来扩展 Windows 路径 -
import os
path = "C:\\Users\\%USERNAME%\\Documents\\file.txt"
expanded_path = os.path.expandvars(path)
print(expanded_path)
输出
以下是上述代码的输出 -
C:\Users\Lenovo\Documents\file.txt
例
如果指定的环境变量不存在,则路径保持不变。
在此示例中,“$NONEXISTENT” 不是有效的环境变量,因此路径保持不变 -
import os
path = "$NONEXISTENT/Documents/file.txt"
expanded_path = os.path.expandvars(path)
print(expanded_path)
输出
生成的结果如下所示 -
$NONEXISTENT/Documents/file.txt
例
在此示例中,我们将扩展多个环境变量”HOME"一个nd"HOME"一个nd"TEMP“ 的 API 请求。这两个变量都替换为它们各自的值 -
import os
path = "$HOME/Documents/$TEMP/file.txt"
expanded_path = os.path.expandvars(path)
print(expanded_path)
输出
我们得到的输出如下所示 -
C:\Users\Lenovo/Documents/C:\Users\Lenovo\AppData\Local\Temp/file.txt