簡體   English   中英

使用python覆蓋屬性表

[英]Overwrite attribute table using python

當我嘗試使用python代碼向要素類的屬性表中添加字段並使用幾何圖形(x和y)更新字段時,出現以下錯誤:

欄位A已存在
執行失敗(AddField)。

我用了

  arcpy.env.overwriteOutput = True

在我的代碼中,但似乎不起作用。

如何覆蓋要素類的屬性表? 此覆蓋代碼是否也適用於覆蓋屬性表? 我知道即使進行地理處理,有時代碼也無法正常工作。

arcpy.env.overwriteOutput將覆蓋現有數據集,而不覆蓋現有字段。

您應該檢查該字段是否存在,如果存在,請執行以下任一操作:

刪除並重新添加:

if len(arcpy.ListFields(your_dataset, A)) > 0:
  arcpy.DeleteField_management(your_dataset, A)
  arcpy.AddField_management(your_dataset, A, field_type)

不添加:

if len(arcpy.ListFields(your_dataset, A)) > 0:
  arcpy.AddMessage("Field A already exists")
else:
  arcpy.AddField_management(your_dataset, A, field_type)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM