graph_tool:更快地访问顶点/边缘属性

时间:2017-09-14 12:53:51

标签: python graph-algorithm graph-tool

我想加快顶点/边缘属性访问过程。

对于顶点属性访问,我找到了一种优化边缘属性访问的方法,但对我来说并不是那么简单。

vertex属性的想法是直接修改内部数组(a属性)。

例如

vfilt = g.new_vertex_property('bool')
for i in range(9999): 
    vfilt.a[int(i % n)] = random.randint(0, 1)

(注意vfilt.a而非vfilt

而不是使用:

vfilt = g.new_vertex_property('bool')
for i in range(9999): 
    vfilt[int(i % n)] = random.randint(0, 1)

但是,对于edge,我不确定属性数组中edge与其内部索引之间的映射。

我的问题是:

  • 如何优化边缘属性访问?
  • 还有其他优化顶点属性的方法吗?

1 个答案:

答案 0 :(得分:1)

怎么样

for e in g.edges():
    vfilt[e] = random.randint(0, 1)

同样,对于顶点:

for v in g.vertices():
    vfilt[v] = random.randint(0, 1)