我正在尝试从GML文件中读取一堆图表(大约30k),并使用NetworkX库及其read_gml()
函数计算每个图形的一些属性。这是我的代码:
import os
import networkx as nx
folder = 'graphs/'
for filename in os.listdir(folder):
g = nx.read_gml(folder + filename)
print g.number_of_nodes(), g.number_of_edges()
此函数似乎存在内存泄漏,并且在读取文件后不会释放分配的内存。因为它不断消耗内存,所以我的系统冻结并崩溃(处理大约15k文件后)。 我试着添加
del g
和
import gc
gc.collect()
但它没有帮助。有什么想法吗?