MultiDiGraph.to_directed#

MultiDiGraph.to_directed(as_view=False)#

返回图的有向表示。

Returns:
GMultiDiGraph

一个有向图,具有相同名称、相同节点,并且每条边 (u, v, k, data) 被替换为两条有向边 (u, v, k, data) 和 (v, u, k, data)。

Notes

这返回了边、节点和图属性的“深拷贝”,试图完全复制所有数据和引用。

这与类似 D=MultiDiGraph(G) 的浅拷贝形成对比。

有关浅拷贝和深拷贝的更多信息,请参阅 Python 的 copy 模块,https://docs.python.org/3/library/copy.html

警告:如果你已经对 MultiGraph 进行了子类化,以在数据结构中使用类似字典的对象,这些更改不会通过此方法转移到由 MultiDiGraph 创建的对象中。

Examples

>>> G = nx.MultiGraph()
>>> G.add_edge(0, 1)
0
>>> G.add_edge(0, 1)
1
>>> H = G.to_directed()
>>> list(H.edges)
[(0, 1, 0), (0, 1, 1), (1, 0, 0), (1, 0, 1)]

如果已经是定向的,则返回一个(深)拷贝

>>> G = nx.MultiDiGraph()
>>> G.add_edge(0, 1)
0
>>> H = G.to_directed()
>>> list(H.edges)
[(0, 1, 0)]