【发布时间】:2020-04-10 11:41:36
【问题描述】:
我正在开发一个需要拆分和重新加入一些文件路径的程序,但我不确定为什么 os.path.join(*list) 和 os.path.sep.join(list) 会产生不同的结果当分隔路径中存在驱动器号时。
import os
path = 'C:\\Users\\choglan\\Desktop'
separatedPath = path.split(os.path.sep)
# ['C:', 'Users', 'choglan', 'Desktop']
path = os.path.sep.join(separatedPath)
# C:\\Users\\choglan\\Desktop
print(path)
path = os.path.join(*separatedPath)
# C:Users\\choglan\\Desktop
print(path)
为什么会这样?即使 os.path.join(*list) 似乎更常用,我是否应该只为我的程序使用 os.path.sep.join(list) ?
【问题讨论】:
-
这似乎是一个 Windows 问题,因为当我在 Ubuntu 中运行该确切代码块时,它没有问题,并且两条路径相同。
标签: python python-3.x os.path