将路径转换为列表

时间:2019-02-26 00:38:06

标签: python

我有一个由目录(例如'grandpa\\parent\\child')组成的路径,需要在列表(例如['grandpa', 'parent', 'child'])中进行转换。

该路径可以具有更少或更多的子目录(例如['parent', 'child'])。

我尝试迭代os.path.split(),但是在所有情况下都无法正常工作:

import os

s = []
def splitall(path):
    l = list(os.path.split(path))
    s.append(l[1])
    return s if l[0] == '' else splitall(l[0])

p = 'grandpa\\parent\\child'
l = splitall(p)
print(l)

应该有更好的方法吧?也许是我不知道的方法。

1 个答案:

答案 0 :(得分:4)

您也可以使用pathlib

import pathlib

path = "a\\b\\c"
p = pathlib.Path(path)
result = p.parts