Pathlib - 加入n个父母



我正在玩弄 Pathlib,并试图找出是否有一种简单的方法来执行以下操作 - 我有一组路径,我想从中提取前 4 个父项,并将这 4 个父项连接成一条路径。

或者(如果可能的话(我想将所有父母加入到通过给定的父母,例如,c://d1//d2//known//d4//...这里我想提取最多//d4,即"已知"父母之后的父母。

我知道我可以循环这些部分并连接到第 n 个部分,但我想知道有没有办法做类似以下p.joinpath(p.parents[0:4])p.joinpath(p.parents[0: 'known_index'+1])或任何最 pythonic 的事情。

更新:

我设法用元组解包print(p.joinpath(*p.parts[0:5]))加入第 n 个,是否有首选方法,但我仍然没有设法实现上述替代情况的目标。

更新:

我找到了"替代"案例的选项print(p.joinpath(*p.parts[0: p.parts.index('PCB_236_237_ARM')+2]))

我现在只是在寻找最蟒蛇的方式。

这对我来说看起来足够pythonic:

p1 = pl.Path('c://d1//d2//known//d4//')
idx = p1.parts.index('known')
p2 = pl.Path(*p1.parts[:idx+1])

我使用pl.Path(*segments)来联接段,因为实例方法p.joinpath()将段追加到实例的p自己的路径。

相关内容

  • 没有找到相关文章

最新更新