Python networkx图中的一条边反转

Python networkx图中的一条边反转,python,graph,networkx,Python,Graph,Networkx,我发现DiGraph.reverse()可以反转有向图中所有边的方向,但有没有办法只更改特定边的方向?当然可以手动完成,但API中没有相关内容 $ cat edges.py; echo; python edges.py import networkx as nx G=nx.DiGraph() G.add_edge(1,2,{'weight':.5}) G.add_edge(3,4,{'weight':1.0}) attrs = G[1][2] G.remove_edge(1,2) G.add_

我发现
DiGraph.reverse()
可以反转有向图中所有边的方向,但有没有办法只更改特定边的方向?

当然可以手动完成,但API中没有相关内容

$ cat edges.py; echo; python edges.py 
import networkx as nx
G=nx.DiGraph()
G.add_edge(1,2,{'weight':.5})
G.add_edge(3,4,{'weight':1.0})
attrs = G[1][2]
G.remove_edge(1,2)
G.add_edge(2,1,attrs)
print G.edges(data=True)

[(2, 1, {'weight': 0.5}), (3, 4, {'weight': 1.0})]
$ 

好啊您正在删除边并插入还原的边。我想知道是否有用于这种图形修改的API函数。我没有看到。假设在有向图中,这不被认为是边的修改,因为在另一个方向上可能有边。我不确定API是否包括(甚至应该包括)像这样的高级功能,尽管反向函数的存在确实是一个难题。。。
reverse
的存在可能意味着单个边也存在这种情况。reverse的实现使其看起来不太可能:有向图的在位反向替换了先前和后续词典。