在调用os.path时, 根据操作系统的不同 程序会选择使用posixpath.py
或ntpath.py
(由os
中的代码实现).
对文件命名时应当使用unicode字符串(操作系统允许的字符), 但unix中有时无法使用任意字符进行命名, 此时需要字节对象进行表示. 而windows的情况则相反.
因此对于此模块中的方法, 既可以传递字节文件路径对象, 也可以传递字符文件路径对象.
关于文件路径自动扩展(替换路径中的环境变量):
该模块中有两个方法支持自动扩展
1.expanduser(path)
用于扩展用户目录路径
import os
fp1 = os.path.expanduser('~')
fp2 = os.path.expanduser("~user")
print(fp1, fp2, sep='\n')
# result:
# C:\Users\<自己的用户名>
# C:\Users\user
有以下注意点:
2.expandvars(path)
用于扩展环境变量的值
import os
fp1 = os.path.expandvars("$USERPROFILE\$OS")
fp2 = os.path.expandvars("${USERPROFILE}")
print(fp1, fp2, sep='\n')
# result:
# C:\Users\<username>\Windows_NT
# C:\Users\<username>
有以下注意点:
$name
或 ${name}
%name%
os.environ
原文:https://www.cnblogs.com/xust14521/p/11863621.html