我正在寻求有关Python中表示文件目录的优雅设计建议,而不使用符号链接,可以查询“属于”关系(例如,G是/A/B/C的子目录)。 我目前的想法是:
给定根路径,我通过os.path.walk()向下遍历。 两个类表示我感兴趣的节点类型,并跟踪父子关系。
class ADir(object):
def __init_(self, name, parent=None):
self.name = name
self.parent = parent
self.children = []
def add_child(self, id):
self.children.append(id)
class AFile(object):
def __init_(self, name, parent=None):
self.name = name
self.parent = parent
我需要重新实现检查现有目录的功能,以及给出目录/文件位置的函数等。这一切开始感觉非常像对现有通用树算法的重新实现。
在StackExchange、Google等网站上搜索可以找到许多不同的方法。但我没有发现任何一种方法利用目录结构的自然边界。
欢迎提出任何想法和指向讨论、博客文章和代码的链接。