Python 3.7.13中嵌入Windows环境变量的路径字符串报错求助
问题解答
直接在字符串里用
%USERNAME%这种Windows环境变量格式不行,Python不会自动解析这种语法,会把%USERNAME%当作路径的字面部分,导致路径不存在,触发错误。正确的处理方式有两种:
- 使用
os.environ获取环境变量后拼接路径:
或者用原始字符串格式化:import sys import os username = os.environ['USERNAME'] sys.path.append(f'C:\\Users\\{username}\\AppData\\Local\\Programs\\Python\\Python37\\Lib\\site-packages')sys.path.append(r'C:\Users\{}\AppData\Local\Programs\Python\Python37\Lib\site-packages'.format(username)) - 使用
os.path.expandvars()自动解析带%的环境变量字符串:import sys import os path = os.path.expandvars(r'C:\Users\%USERNAME%\AppData\Local\Programs\Python\Python37\Lib\site-packages') sys.path.append(path)
- 使用
额外说明:Python的
site-packages目录通常已经默认在sys.path里,若手动添加出现问题,可先打印sys.path确认已有路径,再检查目标目录是否真实存在。
内容的提问来源于stack exchange,提问作者Mykola
相关产品推荐
相关产品推荐

