ArcGis Python指令碼 批量新增字段

2022-07-03 08:51:12 字數 3355 閱讀 3173

插個廣告,製作arcgis的tool工具學習下面的教程就對了:

零基礎學習python製作arcgis自定義工具**鏈結

《零基礎學習python製作arcgis自定義工具》課程簡介

以下是正文:

函式:arcpy.addfield_management

語法:addfields_management (in_table, field_description)

引數

說明

資料型別

in_table

要新增指定欄位的輸入表。該字段將被新增到現有輸入表,並且不會建立新的輸出表。

可將字段新增到 arcsde 的要素類、檔案或個人地理資料庫的要素類、coverage、shapefile、柵格目錄、獨立表、帶屬性表的柵格和/或圖層。

mosaic layer;

raster catalog layer;

raster layer;

table view

field_name

要新增到輸入表的字段的名稱。

string

field_type

在建立新字段時所使用的字段型別。

string

field_precision

(可選)

描述可儲存在字段中的位數。所有位都將被計算在內,而無論其處於小數點的哪一側。

如果輸入表是個人或檔案地理資料庫,則將忽略字段精度值。

long

field_scale

(可選)

設定可儲存在字段中的小數字數。此引數僅可用於浮點型和雙精度資料字段型別。

如果輸入表是個人或檔案地理資料庫,則將忽略欄位小數字數值。

long

field_length

(可選)

要新增的字段的長度。它為字段的每條記錄設定最大允許字元數。此選項僅適用於文字或 blob 型別的字段。

long

field_alias

(可選)

指定給欄位名稱的備用名稱。此名稱用於為含義隱晦的的欄位名稱指定更具描述性的名稱。字段別名引數僅適用於地理資料庫和 coverage。

string

field_is_nullable

(可選)

不存在關聯屬性資訊的地理要素。它們與零或空欄位不同,僅支援地理資料庫中的字段。

boolean

field_is_required

(可選)

指定要建立的字段是否是表的必填字段;僅支援地理資料庫中的字段。

boolean

field_domain

(可選)

用於約束地理資料庫中的表、要素類或子型別的任何特定屬性的允許值。必須指定現有屬性域的名稱才能將其應用於字段。

string

例:要對「省級行政區域」增加乙個名為「area」,型別是「text」,長度是100的字段。

arcpy.addfield_management("省級行政區域",'area',"text",field_length=100)

①第1參「輸入表」與第2參「欄位名」是必選引數;

②其他引數為字段描述,可選,最好使用具名引數,如field_length=100。

例:給「省級行政區域」新增「a、b、c、d」4個字段。

①用excel製作出欄位及其描述表;

②複製除標題行以為的內容,貼上到txt文件,替換空格為「,」(英文符號,);

③arcpy批量新增字段,匯入「fields description.txt」描述,每一行line是1個字段資訊,將每行資訊用「,」拆分裝入列表linelist;新建欄位各屬性描述使用「具名引數=列表linelist各索引值指示資料的方式傳入;

import

arcpy

#get txt file

f=open("

c:/users/yang/desktop/fields description.txt

",'r')

#read line

line=f.readline()

while

line:

linelist=line.split(','

)

#add field

arcpy.addfield_management("

省級行政區域

",field_name=linelist[0],field_type=linelist[1],field_length=linelist[2],field_precision=linelist[3],field_scale=linelist[4].replace("

\n",""

))

# line=f.readline()

#close the txt file

f.close()

④使用該指令碼時只需要改動「fields description.txt」描述檔案的路徑與待處理的要素名(或路徑)即可。

ps 示例中長度、精度均為隨意寫的,並不準確。

ArcGis Python常用指令碼

arcgis python指令碼 arcgis 中使用的 python 是什麼版本 arcgis python指令碼 批量新增字段 arcgis python指令碼 批量刪除字段 arcgis python指令碼 根據字段內容拆分要素類 shp 為多個 arcgis python指令碼 要素圖斑自動...

awvs11批量指令碼

coding utf 8 import urllib2 import ssl import json author jamesj servers 伺服器 username 使用者名稱 pw sha256加密後的密碼 以上內容請批量替換,然後把要新增的url列表儲存成testawvs.txt檔案,放在...

python實用指令碼2 批量重新命名檔案

前言 工作中經常有重新命名大量檔案的需求,因此可以考慮用程式來一鍵完成。這個功能比較簡單,可以多收集幾種版本來測試一下 python 使用os.listdir 方法返回當前目錄下的所有檔名,對每乙個檔名字串用str.replace 方法做替換操作,然後用os.rename 方法重新命名。import...