我想将路径拆分为其组件,并从底部按顺序处理每个目录。对于
path = 'a/b/c/d'
我想要
components = [
('', 'a'),
('a', 'b'),
('a/b', 'c'),
('a/b/c', 'd')
]
标准库中有什么东西可以帮我完成任务吗?
答案 0 :(得分:0)
这很有效,虽然我更喜欢看起来更好看的东西,但希望不那么容易出错。
>>> 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')]