0

我在 Python 3.2.3 上使用 NetworkX 模块。在两个节点之间具有多条边的多重图 G 中 - 比如说,'a' 和 'b' 之间有三条边 - 在 IDLE 提示符中键入 G['a'].keys() 会返回一个出现 'b' 的 dict_keys 列表只有一次。有什么方法可以使“b”出现的次数与两个节点之间的边一样多?

4

2 回答 2

1

就像是

[(k, len(v)) for k, v in G['a'].items()]
于 2012-07-05T14:33:52.500 回答
1

NetworkX API 建议您使用 G.neighbors(),但对于只会给出唯一邻居的多重图。

如果您想要所有邻居,您可以使用 [v for u,v in G.edges_iter()],例如

In [1]: import networkx as nx

In [2]: G=nx.MultiGraph()

In [3]: G.add_edge('a','b')

In [4]: G.add_edge('a','b')

In [5]: G.add_edge('a','b')

In [6]: [v for u,v in G.edges_iter()]
Out[6]: ['b', 'b', 'b']
于 2012-07-06T18:20:45.607 回答