Python 图形工具:如何访问属性?
我想在一个图中存储一个类的实例,每个节点一个对象(或graph tool调用的“顶点”)。我正在尝试使用顶点属性,因为它似乎是 现在,我想重新读取类对象,例如,迭代所有节点/顶点并打印它们的标题:Python 图形工具:如何访问属性?,python,graph,vertices,graph-tool,Python,Graph,Vertices,Graph Tool,我想在一个图中存储一个类的实例,每个节点一个对象(或graph tool调用的“顶点”)。我正在尝试使用顶点属性,因为它似乎是 现在,我想重新读取类对象,例如,迭代所有节点/顶点并打印它们的标题: for vertex in self.graph.vertices(): # TODO: how to access titles ? this just prints # "<Vertex object with index '0' at 0xb1e4bac>"
for vertex in self.graph.vertices():
# TODO: how to access titles ? this just prints
# "<Vertex object with index '0' at 0xb1e4bac>"
print repr(vertex) + '\n'
self.graph.vertices()中的顶点的:
#TODO:如何访问标题?这只是印刷品
# ""
打印报告(顶点)+'\n'
另外,如何从图中获取具有特定标题的类对象?一种方法似乎是使用graph.set\u edge\u filter(…)
创建一个顶点过滤器,然后应用它——考虑到我想要的只是返回一个对象,这似乎是一个非常昂贵的操作。我真的不想像IMO一样维护我自己的对象标题/顶点索引映射,这是图形的任务之一
我是否遗漏了一些基本信息?为了访问属性值,使用与设置属性值相同的语法,即
for vertex in graph.vertices():
print vprop[vertex].title
我会做你想做的
如果要获取具有给定特性值的顶点,则除了在图形中搜索它之外,别无选择。请记住,属性值不需要是唯一的,因此无法以廉价的方式执行反向映射。此外,每个属性映射都需要一个反向映射,这将占用大量内存。但是,您可以使用dict
对象轻松地自行完成此操作
for vertex in graph.vertices():
print vprop[vertex].title