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ファイルでに変更xrangeしrangeただけで、解決したようです。
私が読んだことから、それはPythonバージョン(Python2 vs Python3)に関連している可能性があります。
iteritemsれませんでしたitems。前者はイテレータを提供しました(そして3.xにはそのようなメソッドはありません)。後者はビューを提供します(これはとして2.7にバックポートされましたviewitems)。
dict.iteritems -> dict.items。