ฉันพยายามใช้ NetworkX เพื่ออ่าน Shapefile และใช้ฟังก์ชันwrite_shp()
เพื่อสร้าง Shapefiles ที่จะมีโหนดและขอบ แต่เมื่อฉันพยายามเรียกใช้รหัสมันทำให้ฉันมีข้อผิดพลาดต่อไปนี้:
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 และติดตั้ง NetworkX ผ่านการติดตั้ง pip
ก่อนที่ข้อผิดพลาดนี้จะให้อีกอันหนึ่งที่บอกว่า "ไม่มี xrange" หรืออะไรทำนองนั้นดังนั้นฉันจึงค้นหาและเปลี่ยนxrange
เป็นrange
ในไฟล์ nx_shp.py ซึ่งดูเหมือนจะแก้ไขได้
จากสิ่งที่ฉันได้อ่านมันอาจเกี่ยวข้องกับรุ่น Python (Python2 กับ Python3)
iteritems
items
อดีตให้คุณตัววนซ้ำ (และ 3.x ไม่มีวิธีการดังกล่าว) หลังให้มุมมอง (ซึ่งถูก backported เป็น 2.7 เป็นviewitems
)
dict.iteritems -> dict.items
เปลี่ยนชื่อ