我正在处理一个需要分割和重新连接一些文件路径的程序,我不知道为什么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.sep.join(list)吗? 问题来源StackOverflow 地址:/questions/59383233/why-are-os-path-join-on-a-list-and-os-path-sep-join-on-a-list-not-functional
os.path。join并不是path.split(os.path.sep)的反向。如果你阅读了文档,你会发现一个比仅仅使用os.path复杂得多的过程描述。9 .论点之间的分离。最相关的部分如下: 您可能应该使用pathlib.PurePath(path)。部分而不是路径。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。