将未知长度的列表或元组传递给 pathlib

Passing a list or tuple of unknown length to pathlib

这个问题本质上分为两个部分:Pathlib 如何处理未知数量的路径段作为参数,以及是否可以将列表或元组传递给构造函数?

Pathclass的文档如下:

class pathlib.Path(*pathsegments)

我知道它会接受可变数量的参数,所以我想它也可以检查类型,然后适当地扩展列表或元组。测试表明它不会这样做,但是:

import pathlib

parts = ['a', 'b', 'c', 'd']
p = pathlib.Path(parts)

这导致:

TypeError: expected str, bytes or os.PathLike object, not list

元组也会发生同样的事情。如何使用 Pathlib 从未知数量的路径段构建路径?

这样称呼它:

p = pathlib.Path(*parts)