小编典典

错误:“‘dict’对象没有属性‘iteritems’”

all

我正在尝试使用 NetworkX 读取 Shapefile 并使用该函数write_shp()生成将包含节点和边缘的
Shapefile,但是当我尝试运行代码时,它给了我以下错误:

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'

我正在使用 Python 3.4 并通过 pip install 安装了 NetworkX。

在这个错误之前,它已经给了我另一个说“xrange 不存在”或类似的东西,所以我查了一下,只是在 nx_shp.py
文件中更改xrangerange它,这似乎解决了它。

根据我的阅读,它可能与 Python 版本(Python2 与 Python3)有关。


阅读 177

收藏
2022-03-09

共1个答案

小编典典

正如您在 python3 中一样,请使用dict.items()而不是dict.iteritems()

iteritems()在python3中被删除了,所以你不能再使用这个方法了。

查看 Python 3.0 Wiki Built-in
Changes
部分,其中说明:

删除dict.iteritems(),dict.iterkeys()dict.itervalues().

而是:分别使用dict.items()dict.keys()dict.values()

2022-03-09