我正在尝试使用更新游标来替换字段中的缩写(例如:ST到STREET,AVE到AVENUE等),但似乎无法使其工作。我尝试了每一种排列,但显然遗漏了一些东西。代码运行但不对字段进行任何更改。有什么建议? 非常感谢
import arcpy
from arcpy import env
env.workspace = "C:/data"
fc = "blah.shp"
cursor = arcpy.da.UpdateCursor(fc, ["BLAH_BLAH"])
for row in cursor:
row = row.replace("ST", "STREET")
cursor.updateRow(row)
del row
del cursor
答案 0 :(得分:1)
row是一个字段列表,您无法直接使用它访问字段值。请改用字段索引:row[0] = row[0].replace("ST", "STREET")
答案 1 :(得分:1)
表= r'C:\ DATA'
使用arcpy.da.UpdateCursor(表,“ ST_NAME”)作为光标:
for row in cursor:
if "ST" in row[0]:
row[0] = row[0].replace("ST", "STREET")
if "AVE" in row[0]:
row[0]= row[0].replace("AVE", "AVENUE")
if "RD" in row[0]:
row[0]= row[0].replace("RD", "ROAD")
if "DR" in row[0]:
row[0]= row[0].replace("DR", "DRIVE")
if "BLVD" in row[0]:
row[0]= row[0].replace("BLVD", "BOULEVARD")
if "PK" in row[0]:
row[0]= row[0].replace("PK", "PARK")
cursor.updateRow(row)