MultiGraph.to_directed#

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