Graph.edges#

property Graph.edges#

表示图的 EdgeView,可作为 G.edges 或 G.edges() 使用。

edges(self, nbunch=None, data=False, default=None)

EdgeView 提供对边元组的类似集合的操作以及边属性查找。调用时,它还提供一个 EdgeDataView 对象,该对象允许控制对边属性的访问(但不提供类似集合的操作)。因此,G.edges[u, v]['color'] 提供边 (u, v) 的 color 属性值,而 for (u, v, c) in G.edges.data('color', default='red'): 迭代所有边,生成 color 属性,如果不存在 color 属性,则使用默认值 'red'

参数
nbunch单个节点、容器或所有节点(默认值=所有节点)

视图将只报告来自这些节点的边。

datastring 或 bool,可选(默认值=False)

在三元组 (u, v, ddict[data]) 中返回的边属性。如果为 True,则在三元组 (u, v, ddict) 中返回边属性字典。如果为 False,则返回二元组 (u, v)。

defaultvalue,可选(默认值=None)

对于没有请求属性的边使用该值。仅当 data 不是 True 或 False 时才相关。

返回值
edgesEdgeView

一个边属性视图,通常迭代边的 (u, v) 或 (u, v, d) 元组,但也可以用于属性查找,例如 edges[u, v]['foo']

备注

nbunch 中不在图中的节点将被(悄悄地)忽略。对于有向图,这返回出边。

示例

>>> G = nx.path_graph(3)  # or MultiGraph, etc
>>> G.add_edge(2, 3, weight=5)
>>> [e for e in G.edges]
[(0, 1), (1, 2), (2, 3)]
>>> G.edges.data()  # default data is {} (empty dict)
EdgeDataView([(0, 1, {}), (1, 2, {}), (2, 3, {'weight': 5})])
>>> G.edges.data("weight", default=1)
EdgeDataView([(0, 1, 1), (1, 2, 1), (2, 3, 5)])
>>> G.edges([0, 3])  # only edges from these nodes
EdgeDataView([(0, 1), (3, 2)])
>>> G.edges(0)  # only edges from node 0
EdgeDataView([(0, 1)])