Warning

This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.

MultiGraph.add_edges_from(ebunch_to_add, **attr)[source]

Parameters: ebunch_to_add (container of edges) – Each edge given in the container will be added to the graph. The edges can be: 2-tuples (u, v) or 3-tuples (u, v, d) for an edge data dict d, or 3-tuples (u, v, k) for not iterable key k, or 4-tuples (u, v, k, d) for an edge with data and key k attr (keyword arguments, optional) – Edge data (or labels or objects) can be assigned using keyword arguments. A list of edge keys assigned to the edges in ebunch.

add_edge()
add_weighted_edges_from()
convenient way to add weighted edges

Notes

Adding the same edge twice has no effect but any edge data will be updated when each duplicate edge is added.

Edge attributes specified in an ebunch take precedence over attributes specified via keyword arguments.

Default keys are generated using the method new_edge_key(). This method can be overridden by subclassing the base class and providing a custom new_edge_key() method.

Examples

>>> G = nx.Graph()   # or DiGraph, MultiGraph, MultiDiGraph, etc
>>> G.add_edges_from([(0, 1), (1, 2)]) # using a list of edge tuples
>>> e = zip(range(0, 3), range(1, 4))

>>> G.add_edges_from([(1, 2), (2, 3)], weight=3)