2010-01-28 112 views
2

我需要图形中的边缘端点。我已经安装了networkx。我有一些想法如何继续。Python:获取图形的边缘端点

networkx.Graph.edges_iter()返回在图中的所有边

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

我要的是一个列表[0,1,1,2,2,3]

怎么办我从上面的数据得到这个?

回答

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

您可能不需要list(...),因为它已经可以迭代。

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

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