Networkx neighbor set not printing
As others have noted, in networkx 2.0 neighbors
returns an iterator rather than a list. Networkx has provided a guide for migrating code written in 1.x to 2.0. For neighbors
, it recommends
list(G.neighbors(n))
(see Fastest way to convert an iterator to a list). The migration guide provides the example:
>>> G = nx.complete_graph(5)
>>> n = 1
>>> G.neighbors(n)
<dictionary-keyiterator object at ...>
>>> list(G.neighbors(n))
[0, 2, 3, 4]
From networkx 2.0 onwards, Graph.neighbors(element)
returns an iterator rather than a list.
To get the list, simply apply list
list(Graph.neighbors(element))
or use list comprehension:
neighbors = [n for n in Graph.neighbors(element)]
The first method (first mentioned by Joel) is the recommended method, as it's faster.
Reference: https://networkx.github.io/documentation/stable/reference/classes/generated/networkx.Graph.neighbors.html