python中处理不同操作系统上的路径问题时,需要注意路径分隔符不同,windows使用反斜杠\作为路径分隔符,在linux和mac上,则使用正斜杠/
为了保证代码在不同的操作系统上都能运行,可以使用以下几种办法解决。
1.使用os.path模块
import os
# 构建路径
path = os.path.join('folder', 'subfolder', 'file.txt')
print(path) # 在 Windows 上输出 folder\subfolder\file.txt
# 在 Unix-like 系统上输出 folder/subfolder/file.txt
# 获取当前目录
current_dir = os.getcwd()
print(current_dir)
# 构建完整路径
full_path = os.path.join(current_dir, 'folder', 'subfolder', 'file.txt')
print(full_path)
2.使用原始字符串
import os
# 构建路径
path = os.path.join('folder', 'subfolder', 'file.txt')
print(path) # 在 Windows 上输出 folder\subfolder\file.txt
# 在 Unix-like 系统上输出 folder/subfolder/file.txt
# 获取当前目录
current_dir = os.getcwd()
print(current_dir)
# 构建完整路径
full_path = os.path.join(current_dir, 'folder', 'subfolder', 'file.txt')
print(full_path)
3.使用 os 模块获取路径分隔符
import os
# 手动构建路径
path = 'folder' + os.sep + 'subfolder' + os.sep + 'file.txt'
print(path) # 输出形式与操作系统有关