gpt4 book ai didi

python - 查找路径列表的公共(public)路径前缀

转载 作者:IT老高 更新时间:2023-10-28 21:08:55 24 4
gpt4 key购买 nike

我的问题是找到给定文件集的公共(public) path 前缀。

从字面上看,我期待“os.path.commonprefix”能做到这一点。不幸的是,commonprefix 位于 path 中的事实颇具误导性,因为它实际上会搜索字符串前缀。

我的问题是,如何才能真正解决路径问题? this (fairly high rated) answer 中简要提到了该问题。但仅作为旁注和建议的解决方案(在 commonprefix 的输入中附加斜杠)恕我直言存在问题,因为它会失败,例如:

os.path.commonprefix(['/usr/var1/log/', '/usr/var2/log/'])
# returns /usr/var but it should be /usr

为了防止其他人落入同样的陷阱,在一个单独的问题中讨论这个问题可能是值得的:对于这个问题是否有一个简单/可移植的解决方案,它不依赖于对文件系统的讨厌检查(即,访问commonprefix的结果并检查它是否是目录,如果不是则返回结果的os.path.dirname)?

最佳答案

在最近的 Python 版本中,这个问题似乎已得到纠正。 3.5 版新增功能 os.path.commonpath() ,它返回公共(public)路径而不是公共(public)字符串前缀。

关于python - 查找路径列表的公共(public)路径前缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21498939/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com