gpt4 book ai didi

python - 将两个路径与公共(public)文件夹组合

转载 作者:太空宇宙 更新时间:2023-11-04 02:50:30 25 4
gpt4 key购买 nike

在 python 中有没有一种方法可以将两条路径与 os.path 或任何其他不重复公共(public)子文件夹的库结合起来?即

root = '/home/user/test'

rel_path = 'test/files/file.txt'

os.combine(root, rel_path)

并返回 /home/user/test/files/file.txt 而不是 /home/user/test/test/files/file.txt

最佳答案

我认为你必须手动完成,我不认为 os.path 实现了这个功能。

也许可以尝试这样的事情:

def combine_with_duplicate(root, rel_path):
rs = root.split("/")
rps = rel_path.split("/")
popped = False
for v in rs:
if v == rps[0]:
rps.pop(0)
popped = True
elif popped:
break

return "/".join(rs+rps)


print(combine_with_duplicate('/home/user/test', 'test/files/file.txt'))
# /home/user/test/files/file.txt
print(combine_with_duplicate('/home/user', 'test/files/file.txt'))
# /home/user/test/files/file.txt
print(combine_with_duplicate('/home/user/test', 'user/test/files/file.txt'))
# /home/user/test/files/file.txt

关于python - 将两个路径与公共(public)文件夹组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44022916/

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