ArcGIS ArcPy Python处理数据
1、使用搜索游标查看行中的字段值。
import arcpy
# Set the workspace
arcpy.env.workspace = "c:/base/data.gdb"
# Create the search cursor
cursor = arcpy.SearchCursor("roads", '"TYPE" <> 4')
# Iterate through the rows in the cursor
for row in cursor:
print("Name: {0}, CFCC code: {1}".format(row.NAME, row.CFCC))
del cursor, row
2、使用更新游标更改行中的字段值。
import arcpy # Set the workspace arcpy.env.workspace = "c:/base/data.gdb" # Create the update cursor cursor = arcpy.UpdateCursor("roads") # Update the road buffer distance field based on road type. # Road type is either 1,2,3,4 Distance is in meters. for row in cursor: row.setValue("BUFFER_DIST", row.getValue("TYPE") * 100) cursor.updateRow(row) # Delete cursor and row objects del cursor, row
3、使用插入游标在表中新建行。
import datetime
import arcpy
# Create insert cursor for table
cursor = arcpy.InsertCursor("c:/base/data.gdb/roads_maint")
# Create 25 new rows. Set default values on distance and CFCC code
for i in range(1000, 1025):
row = cursor.newRow()
row.setValue('rowid', i)
row.setValue('distance', 100)
row.setValue('CFCC', 'A10')
row.setValue('LastInsp', datetime.datetime.now())
cursor.insertRow(row)
# Delete cursor and row objects
del cursor, row
4、删除记录
with arcpy.da.Editor(arcpy.env.workspace) as edit:
with arcpy.da.UpdateCursor(layerName, ["GB"], 'GB not in (' + layerCodes + ')') as cursor:
for row in cursor:
print("GB Code: {0}".format(row[0]))
cursor.deleteRow()
博客地址: http://www.cnblogs.com/defineconst/
博客版权: 本文以学习、研究和分享为主,欢迎转载和各类爬虫,但必须在文章页面明显位置给出原文链接。 如果文中有不妥或者错误的地方还望高手的您指出,以免误人子弟。如果您有更好的建议,不如留言一起讨论,共同进步! 再次感谢您耐心的读完本篇文章。
博客版权: 本文以学习、研究和分享为主,欢迎转载和各类爬虫,但必须在文章页面明显位置给出原文链接。 如果文中有不妥或者错误的地方还望高手的您指出,以免误人子弟。如果您有更好的建议,不如留言一起讨论,共同进步! 再次感谢您耐心的读完本篇文章。