Tôi đang cố gắng sử dụng NetworkX để đọc Shapefile và sử dụng chức năng write_shp()
để tạo các Shapefile sẽ chứa các nút và cạnh, nhưng khi tôi cố chạy mã, nó sẽ báo lỗi sau:
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'
Tôi đang sử dụng Python 3.4 và đã cài đặt NetworkX thông qua cài đặt pip.
Trước lỗi này, nó đã đưa cho tôi một lỗi khác nói rằng "xrange không tồn tại" hoặc một cái gì đó tương tự, vì vậy tôi đã tra cứu nó và chỉ đổi xrange
thành range
tệp nx_shp.py, có vẻ như đã giải quyết nó.
Từ những gì tôi đã đọc, nó có thể liên quan đến phiên bản Python (Python2 vs Python3).
iteritems
thành items
. Cái trước đã cho bạn một iterator (và 3.x không có phương thức như vậy); cái sau cung cấp cho bạn một cái nhìn (được nhập vào 2.7 như viewitems
).
dict.iteritems -> dict.items
.