将路径拆分为 'triangle' 个子文件夹
Split path into 'triangle' of subfolders
我想将一个路径拆分成它的组成部分,并从底部开始按顺序处理每个目录。对于
path = 'a/b/c/d'
我想得到
components = [
('', 'a'),
('a', 'b'),
('a/b', 'c'),
('a/b/c', 'd')
]
标准库中有什么东西可以帮助我完成任务吗?
这是有效的,尽管我更喜欢看起来更好看并且希望不易出错的东西。
>>> comp = os.path.normpath('a/b/c/d').split(os.sep)
>>> [(os.path.join(*comp[:i]) if comp[:i] else '', comp[i]) for i in range(len(comp))]
[('', 'a'), ('a', 'b'), ('a/b', 'c'), ('a/b/c', 'd')]
我想将一个路径拆分成它的组成部分,并从底部开始按顺序处理每个目录。对于
path = 'a/b/c/d'
我想得到
components = [
('', 'a'),
('a', 'b'),
('a/b', 'c'),
('a/b/c', 'd')
]
标准库中有什么东西可以帮助我完成任务吗?
这是有效的,尽管我更喜欢看起来更好看并且希望不易出错的东西。
>>> comp = os.path.normpath('a/b/c/d').split(os.sep)
>>> [(os.path.join(*comp[:i]) if comp[:i] else '', comp[i]) for i in range(len(comp))]
[('', 'a'), ('a', 'b'), ('a/b', 'c'), ('a/b/c', 'd')]