MultiDiGraph.to_directed#

MultiDiGraph.to_directed(as_view=False)#

返回图的有向表示。

返回:
GMultiDiGraph

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

注意

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

这与类似的 D=MultiDiGraph(G) 返回数据的浅拷贝不同。

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

警告:如果您已将 MultiGraph 子类化以在数据结构中使用类似字典的对象,则这些更改不会转移到此方法创建的 MultiDiGraph 中。

示例

>>> 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)]