Python 3.x 读写GML时标签和id出现NetworkX问题

Python 3.x 读写GML时标签和id出现NetworkX问题,python-3.x,networkx,Python 3.x,Networkx,我有下面的例子,我通过编程创建了一个图形,将其写入GML文件,然后再次将该文件读入图形 我希望能够使用从文件加载的图形来代替编程创建的图形: import networkx as nx g = nx.Graph() g.add_edge(1,4) nx.write_gml(g, "test.gml") gg = nx.read_gml("test.gml", label="label") print(gg.edges(data=Tru

我有下面的例子,我通过编程创建了一个图形,将其写入GML文件,然后再次将该文件读入图形

我希望能够使用从文件加载的图形来代替编程创建的图形:

import networkx as nx

g = nx.Graph()
g.add_edge(1,4)
nx.write_gml(g, "test.gml")
gg = nx.read_gml("test.gml", label="label")
print(gg.edges(data=True))
test.gml的内容如下:

graph [
  node [
    id 0
    label "1"
  ]
  node [
    id 1
    label "4"
  ]
  edge [
    source 0
    target 1
  ]
]
python代码中的节点1和4现在由ID为0和1、标签为“1”和“4”的两个节点表示

读取文件后,我现在必须访问节点4,如下所示:

gg['4']
而不是

g[4]
对于原始图形

当然,我可以确保在查找节点之前将每个节点都转换为字符串,但这对于大型图来说并不实用

另一种方法是以编程方式创建(另一种)与
g
相同但带有整数键的图,但这更麻烦


我该怎么办?

用重新标记节点如何?