【发布时间】:2017-10-24 07:18:02
【问题描述】:
我在a/b/c/d/e/f/x.xml 有一个文件。我需要找到目录d 的绝对路径,即与目录名称d 匹配的层次结构上的父目录。
我可以获取文件名的当前目录为 os.path.abspath(__file__) 。我已经看到pathlib 和glob 的文档,但我无法弄清楚我将如何使用它们。
谁能帮忙
编辑:
感谢下面的所有答案,我得到了一个班轮
os.path.join(*list(itertools.takewhile(lambda x: x != 'd', pathlib.PurePath(os.getcwd()).parts)))
我还需要附加实际的目录名称,即输出应该是 a/b/c/d 。下面是一个丑陋的解决方案(使用 os.path.join 两次)。有人可以修复它(通过在迭代器或列表中添加一个元素:)
os.path.join(os.path.join(*list(itertools.takewhile(lambda x: x != 'd', pathlib.PurePath(os.getcwd()).parts))),"d")
【问题讨论】: