MultiDiGraph.has_edge#

MultiDiGraph.has_edge(u, v, key=None)#

如果图中节点 u 和 v 之间存在边,则返回 True。

这等价于 v in G[u] or key in G[u][v],且不会抛出 KeyError 异常。

参数:
u, v节点

节点可以是字符串或数字等类型。

key可哈希标识符,可选 (默认为 None)

如果指定了此参数,则只有找到具有该 key 的边时才返回 True。

返回:
edge_ind布尔值

如果边在图中则为 True,否则为 False。

示例

可以通过使用两个节点 u, v 调用,或使用边元组 (u, v),或使用边元组 (u, v, key) 调用。

>>> G = nx.MultiGraph()  # or MultiDiGraph
>>> nx.add_path(G, [0, 1, 2, 3])
>>> G.has_edge(0, 1)  # using two nodes
True
>>> e = (0, 1)
>>> G.has_edge(*e)  #  e is a 2-tuple (u, v)
True
>>> G.add_edge(0, 1, key="a")
'a'
>>> G.has_edge(0, 1, key="a")  # specify key
True
>>> G.has_edge(1, 0, key="a")  # edges aren't directed
True
>>> e = (0, 1, "a")
>>> G.has_edge(*e)  # e is a 3-tuple (u, v, 'a')
True

以下语法是等效的

>>> G.has_edge(0, 1)
True
>>> 1 in G[0]  # though this gives :exc:`KeyError` if 0 not in G
True
>>> 0 in G[1]  # other order; also gives :exc:`KeyError` if 0 not in G
True