MyDbf=ur'@.dbf' Navi=ur'@.shp' MyCurs=arcpy.UpdateCursor(MyDbf)#第一个指针
#NaviCurs=arcpy.SearchCursor(Navi)#如果将第二个指针放在这里,则第一遍到头后,指针就到底了,因此,要将指针放在第一个循环内部
print( time.strftime('%H:%M:%S',time.localtime())) for MyCur in MyCurs: Leven=100 NaviCurs=arcpy.SearchCursor(Navi)#嵌套循环的指针,应该放在这里
for NaviCur in NaviCurs: MyName=MyCur.rname leven=int(Levenshtein.levenshtein_distance(MyName,NaviCur.name)) if leven<Leven: print "Myname: '%s' NaviName: %s" % ( MyName, NaviCur.name ) print(leven,Levenshtein.levenshtein(NaviCur.name,MyName)) Leven=leven MyCur.Navi_name=NaviCur.name MyCur.Leven=leven MyCurs.updateRow(MyCur) print( time.strftime('%H:%M:%S',time.localtime()))
关于arcpy中的Cursor,for循环问题
最新推荐文章于 2024-07-06 15:43:35 发布