'Return an iterator over all neighbors of node n.
Parameters
n : node
A node in the graph
Returns
neighbors : iterator
An iterator over all neighbors of node n
Raises
NetworkXError
If the node n is not in the graph.
Examples
>>> G = nx.path_graph(4)  # or DiGraph, MultiGraph, MultiDiGraph, etc
>>> [n for n in G.neighbors(0)]
[1]
Notes
It is usually more convenient (and faster) to access the
adjacency dictionary as ``G[n]``:
>>> G = nx.Graph()   # or DiGraph, MultiGraph, MultiDiGraph, etc
>>> G.add_edge(\'a\', \'b\', weight=7)
>>> G[\'a\']
AtlasView({\'b\': {\'weight\': 7}})
>>> G = nx.path_graph(4)
>>> [n for n in G[0]]
[1]'

def neighbors(self, n):

    try:
        return iter(self._adj[n])
    except KeyError:
        raise NetworkXError(('The    node    %s    is    not    in    the    graph.' % (n,)))
