Python:获取图的边端点

2 投票
2 回答
676 浏览
提问于 2025-04-15 18:35

我需要从一个图中获取边的端点。我已经安装了networkx这个库。我对接下来的步骤有一些想法。

networkx.Graph.edges_iter() 这个函数会返回图中的所有边。

[e for e in G.edges_iter()]
[(0, 1), (1, 2), (2, 3)]

我想要的结果是一个列表 [0,1,1,2,2,3]。

我该如何从上面的数据中得到这个列表呢?

2 个回答

1
edgeList = []
for (a,b) in G.edges_iter():
    edgeList.append(a)
    edgeList.append(b)

当然可以!请把你想要翻译的内容发给我,我会帮你把它变得更简单易懂。

2
>>> import itertools
>>> list(itertools.chain(*[(0, 1), (1, 2), (2, 3)]))
[0, 1, 1, 2, 2, 3]

你可能不需要用 list(...),因为它本身已经可以被遍历了。

你也可以直接尝试用 itertools.chain(G.edges_iter())

撰写回答