我有一个网络,其中每个边都标有日期。我现在还想标记顶点,以便每个顶点都有一个分配给它的日期,对应于所有边事件发生的最小日期并从中发出。是否有一个内置的函数来找到这个比我更快地循环遍历所有顶点,然后手动遍历每个顶点的所有边?换句话说:我在函数之后为给定边的子集找到给定边的属性的最小值。找到连接到给定节点的所有边的边缘属性的最小值
我当前的代码的想法是:
lowest_year = 2016
for v in g.vertices():
for e in v.in_edges():
year = g.ep.year[e]
lowest_year = min(year,lowest_year)
for e in v.out_edges():
year = g.ep.year[e]
lowest_year = min(year,lowest_year)
g.vp.year[v]=lowest_year
lowest_year = 2016
正在运行,出现以下错误: 'TypeError:不支持的操作数类型为+:'InEdgeIterator'和'OutEdgeIterator'' 看起来像方法返回迭代器,而不是列表。 –
@ P-M该文档已被弃用/误导。改为使用'itertools.chain'。答案已更新。 –
现在可以工作,比我最初的方法更优雅。非常感谢你。 –