Estoy tratando de usar NetworkX para leer un Shapefile y usar la función write_shp()
para generar los Shapefiles que contendrán los nodos y los bordes, pero cuando intento ejecutar el código me da el siguiente error:
Traceback (most recent call last): File
"C:/Users/Felipe/PycharmProjects/untitled/asdf.py", line 4, in
<module>
nx.write_shp(redVial, "shapefiles") File "C:\Python34\lib\site-packages\networkx\readwrite\nx_shp.py", line
192, in write_shp
for key, data in e[2].iteritems(): AttributeError: 'dict' object has no attribute 'iteritems'
Estoy usando Python 3.4 e instalé NetworkX a través de la instalación de pip.
Antes de este error, ya me había dado otro que decía "xrange no existe" o algo así, así que lo busqué y simplemente cambié xrange
al range
archivo nx_shp.py, que parecía resolverlo.
Por lo que he leído, podría estar relacionado con la versión de Python (Python2 vs Python3).
iteritems
a items
. El primero le dio un iterador (y 3.x no tiene tal método); este último le ofrece una vista (que se exportó a 2.7 como viewitems
).
dict.iteritems -> dict.items
.