3.5.3.4. networkx.MultiDiGraph.out_edges

MultiDiGraph.out_edges(nbunch=None, data=False, keys=False, default=None)

Return an iterator over the edges.

Edges are returned as tuples with optional data and keys in the order (node, neighbor, key, data).

Parameters:

nbunch : iterable container, optional (default= all nodes)

A container of nodes. The container will be iterated through once.

data : string or bool, optional (default=False)

The edge attribute returned in 3-tuple (u,v,ddict[data]). If True, return edge attribute dict in 3-tuple (u,v,ddict). If False, return 2-tuple (u,v).

keys : bool, optional (default=False)

If True, return edge keys with each edge.

default : value, optional (default=None)

Value used for edges that dont have the requested attribute. Only relevant if data is not True or False.

Returns:

edge : iterator

An iterator over (u,v), (u,v,d) or (u,v,key,d) tuples of edges.

See also

in_edges, out_edges

Notes

Nodes in nbunch that are not in the graph will be (quietly) ignored. For directed graphs this returns the out-edges.

Examples

>>> G = nx.MultiDiGraph()
>>> nx.add_path(G, [0, 1, 2])
>>> G.add_edge(2,3,weight=5)
>>> [e for e in G.edges()]
[(0, 1), (1, 2), (2, 3)]
>>> list(G.edges(data=True)) # default data is {} (empty dict)
[(0, 1, {}), (1, 2, {}), (2, 3, {'weight': 5})]
>>> list(G.edges(data='weight', default=1))
[(0, 1, 1), (1, 2, 1), (2, 3, 5)]
>>> list(G.edges(keys=True)) # default keys are integers
[(0, 1, 0), (1, 2, 0), (2, 3, 0)]
>>> list(G.edges(data=True,keys=True)) # default keys are integers
[(0, 1, 0, {}), (1, 2, 0, {}), (2, 3, 0, {'weight': 5})]
>>> list(G.edges(data='weight',default=1,keys=True))
[(0, 1, 0, 1), (1, 2, 0, 1), (2, 3, 0, 5)]
>>> list(G.edges([0,2]))
[(0, 1), (2, 3)]
>>> list(G.edges(0))
[(0, 1)]