我执行以下 python 命令,尝试从图中删除所有边 G

def method(G):
  edges = G.edges()
  G.remove_edges_from(edges)

但它会产生以下错误:
RuntimeError: dictionary changed size during iteration.

似乎命令遍历边,但是当我删除边时,它会在迭代期间修改迭代器,从而导致错误。

我该如何解决这个问题?

最佳答案

您可能需要研究 create_empty_copy 方法,该方法将没有边的节点复制到新图中。文档字面上写着:



如果您想保持原始图形不变,您可以执行以下操作

edges = list(G.edges)

确保在请求移除边缘之前复制边缘。

关于python - 从 networkx 中的图中删除所有边,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52251556/

10-12 22:13