ArcPy 函数概述

ArcPy 使用 Python 提供了许多函数以更好地支持工作流。

除了本主题中列出的函数之外,所有地理处理工具都可以作为 ArcPy 函数进行访问。有关详细信息,请参阅通过 Python 使用工具。 可以在其他 ArcPy 模块中找到其他函数,包括:

了解有关在 Python 中使用函数的详细信息

ArcGIS Online/Portal 函数

函数描述

ClearCredentials

将从客户端计算机中移除 ArcGIS Server 凭据信息以禁用安全服务的访问权限。

GetActivePortalURL

返回活动门户的 URL。

GetPortalDescription

返回门户信息字典。

GetPortalInfo

返回包含可用门户信息的字典。

GetSigninToken

登录到 ArcGIS.com 或本地门户时,返回令牌信息。

ImportCredentials

从 GIS 服务器连接文件中为 ArcGIS Server 非基于令牌的安全服务导入凭据。

ListPortalURLs

返回可用门户 URL 列表。

SignInToPortal

允许您登录门户。

游标函数

函数描述

InsertCursor

将属性值的行插入指定要素类或表。

SearchCursor

从要素类或表中返回属性值行。

UpdateCursor

从要素类或表中更新或删除属性值行。

数据存储函数

函数描述

AddDataStoreItem

在 ArcGIS Server 站点注册文件夹或数据库。

ListDataStoreItems

返回在 ArcGIS Server 站点注册的文件夹或数据库列表。

RemoveDataStoreItem

从 ArcGIS Server 站点注销文件夹或数据库。

ValidateDataStoreItem

验证文件夹或数据库是否已成功注册至 ArcGIS Server 站点。

描述数据函数

函数

Describe

可描述数据元素并返回包含多个属性(例如数据类型、字段、索引等)的 Describe 对象。 该对象的属性是动态的,这意味着根据所描述的数据类型,会有不同的描述属性可供使用。

环境函数

函数描述

ClearEnvironment

用于将特定环境设置重置为其默认值。

GetSystemEnvironment

用于获取指定的系统环境变量值,例如 TEMP

ListEnvironments

可返回地理处理环境名称列表。

ResetEnvironments

将所有环境设置重置为默认设置。

字段函数

函数描述

AddFieldDelimiters

在字段名称中添加字段分隔符,以便在 SQL 表达式中使用。

ParseFieldName

将全限定字段名解析为依赖工作空间的各个组成部分(数据库名称、所有者名称、表名和字段名)。 ParseFieldName 将返回一个包含已解析表名的字符串,其中包含数据库名称、所有者名称、表名和字段名称(以逗号分隔)。 此工作空间必须是文件地理数据库或企业级地理数据库。

ValidateFieldName

使用字符串(字段名称)和工作空间路径,并根据输出地理数据库中的名称限制返回有效的字段名称。 输入字符串中的所有无效字符都将替换为下划线 (_)。 字段名称限制取决于所使用的特定数据库(SQL 或 Oracle)。

常规函数

函数描述

AIOFileOpen

打开支持上下文管理器协议的本地或云文件句柄。

AlterAliasName

更新表或要素类的别名。

ArealUnitConversionFactor

返回将面积测量值转换为其他面积单位的因子。

Command

将地理处理工具作为单个字符串运行。

CreateObject

用于创建地理处理对象。 可使用额外的参数来指定创建对象所需的附加要求,例如 ValueTable 对象中的列数。

CreateRandomValueGenerator

创建新的随机数生成器。

IsBeingEdited

确定给定数据集或工作空间是否在编辑会话中。

LinearUnitConversionFactor

返回将距离测量值转换为其他线性单位的因子。

ListPrinterNames

返回在本地计算机中的可用打印机的列表。

Usage

返回特定工具或函数的语法。

常规数据函数

函数描述

CreateScratchName

为指定的数据类型创建唯一的临时路径名称。如果未给定工作空间,则使用当前工作空间。

CreateUniqueName

通过在输入名称后追加数字的方式为指定工作空间创建唯一名称。 该数字不断递增,直至名称变为唯一。 如果未指定工作空间,则使用当前的工作空间。

Exists

确定指定数据对象是否存在。此函数可测试是否存在各种数据类型,这些数据类型包括要素类、表、数据集、shapefile、工作空间、图层和文件。函数返回指示元素是否存在的布尔值。

ParseTableName

将表名解析为依赖工作空间的各个组成部分(数据库、所有者、表)。ParseTableName 将返回一个包含已解析表名的字符串,其中的数据库名称、所有者名称和表名以逗号分隔。此工作空间必须是个人数据库、文件数据库或企业级地理数据库。

TestSchemaLock

用于测试能否获取要素类、表或要素数据集的方案锁。 用于更改方案的工具将需要在输入数据上放置方案锁。 添加字段工具就是此类工具的示例。 如果该工具在运行时需要方案锁,但无法获取方案锁,则将返回相应的错误消息。 使用此类工具的脚本应测试能否在输入数据上获取方案锁。 TestSchemaLock 函数不会对输入数据真正应用方案锁,但会返回布尔值。

ValidateTableName

将基于表名称和工作空间路径返回工作空间的有效表名称。 下划线“_”将替换在表名称中发现的任何无效字符,并遵循工作空间的名称限制。 表名限制取决于所使用的特定 RDBMS。

地理数据库管理函数

函数描述

AcceptConnections

允许管理员启用或禁用非管理员用户连接到企业级地理数据库的功能。

DisconnectUser

允许管理员断开当前连接到企业级地理数据库的用户的连接。

ListUsers

返回一组指定的元组,其中包含连接到企业级地理数据库的所有用户的信息。

几何函数

函数描述

AsShape

将 Esri JSON 或 GeoJSON 几何转换为 ArcPy 几何,并将 Esri JSON 要素集转换为 ArcPy 要素集。GeoJSON 是一种地理空间数据的交换格式,可用于对地理数据结构进行编码。

FromCoordString

将坐标系记法字符串转换为 WGS84 坐标中的 PointGeometry 对象。

FromGeohash

将 geohash 字符串转换为 WGS 1984 坐标中的 Extent 对象,该对象用于表示 geohash 格网中的相应边界框。

FromWKB

根据存储为 bytearraybytes 对象的熟知二进制 (WKB) 字符串来创建几何对象。

FromWKT

根据熟知文本 (WKT) 字符串创建新的几何对象。

许可和安装函数

函数描述

CheckExtension

核查是否存在可为特定类型的扩展模块检出的许可。

CheckInExtension

将许可归还给许可管理器,以便其他应用程序使用。

CheckOutExtension

通过许可管理器检索许可。

CheckProduct

检查申请的许可是否可用。

GetInstallInfo

返回包含有关安装信息的字典。

ListInstallations

将返回安装类型列表。

ProductInfo

返回当前产品许可。

列出数据函数

函数描述

ListDatasets

返回当前工作空间中的数据集的列表。 可针对数据集名称和数据集类型指定搜索条件,从而限制返回的列表。

ListFeatureClasses

可返回当前工作空间中受名称、要素类型和可选要素数据集限制的要素类的列表。

ListFields

可返回指定数据集中的要素类、shapefile 或表中的字段的列表。 返回的列表可用针对名称和字段类型的搜索条件进行限制,并将包含 Field 对象。

ListFiles

返回当前工作空间中的文件列表。

ListIndexes

可返回指定数据集中的要素类、shapefile 或表中的索引的列表。

ListRasters

返回当前工作空间中的栅格列表。

ListTables

返回当前工作空间中的表格列表。

ListVersions

列出连接用户有权使用的版本。

ListWorkspaces

返回当前工作空间中的工作空间列表。

日志记录函数

函数描述

GetLogHistory

确定历史记录是否处于活动状态。

GetLogMetadata

确定是否将地理处理操作写入数据集元数据。

SetLogHistory

控制是否将执行的地理处理工具的相关信息写入外部日志文件。

SetLogMetadata

控制是否更新地理处理工具输入和输出数据集元数据,以包括工具名称、参数、工具运行时间和其他信息。

消息和错误处理函数

函数描述

AddError

向脚本工具或 Python 工具箱工具的消息中添加错误消息(严重性为 2)。

AddIDMessage

使用具有脚本工具的系统 ID 消息。

AddMessage

向脚本工具或 Python 工具箱工具的消息中添加信息性消息(严重性为 0)。

AddReturnMessage

按索引将脚本工具的返回消息设置为输出消息。

AddWarning

向脚本工具或 Python 工具箱工具的消息中添加警告消息(严重性为 1)。

GetAllMessages

将返回之前运行的工具的消息类型、返回代码和消息字符串。

GetIDMessage

获取错误或警告 ID 消息的字符串。

GetMaxSeverity

用于获取从之前运行的工具返回的最大严重性。

GetMessage

按索引位置返回地理处理工具消息。

GetMessageCount

将返回从之前运行的工具返回的所有消息的数字计数。

GetMessages

按指定的严重性级别从工具返回地理处理消息。

GetReturnCode

用于返回地理处理消息的消息错误代码。

GetSeverity

按索引获取指定消息的严重性代码(0、1 和 2)。

GetSeverityLevel

返回严重性级别。严重性级别用于控制地理处理工具抛出异常的方式。

SetMessageLevels

用于设置要与地理处理工具消息一起返回的附加信息性消息类别。

SetSeverityLevel

用于控制地理处理工具抛出异常的方式。

参数函数

函数描述

CopyParameter

按索引或参数名称将指定参数复制到脚本工具中的另一个参数中。 指定参数必须具有相同的数据类型。

GetArgumentCount

返回传递至脚本的参数数量。

GetParameter

在参数列表中,通过参数索引或名称选择所需参数。 参数以对象的形式返回。

GetParameterAsText

按照索引位置或参数名称以文本字符串形式获取指定参数。

GetParameterCount

用于返回指定工具的参数值计数。 如果此工具包含在自定义工具箱中,请使用 ImportToolbox 函数以访问此自定义工具。

GetParameterInfo

返回给定工具的参数对象列表,并且通常用在脚本工具的 ToolValidator 类中。

GetParameterValue

为指定工具名称返回所需参数的默认值。 该参数通过索引或参数名称指定。

SetParameter

使用对象按索引或参数名称设置指定参数属性。 此函数用于将对象从脚本传递到脚本工具。 如果您需要传递字符串,请使用 SetParameterAsText 函数。

SetParameterAsText

按照索引位置或参数名称以文本字符串形式获取指定参数。

SetParameterSymbology

可通过索引或参数名称设置脚本工具指定输出参数的符号系统属性。

进度对话框函数

函数描述

ResetProgressor

将进度条重置为初始状态。

SetProgressor

建立进度条对象以支持要在地理处理窗格中显示的进度信息。可通过选择默认进度条或步长进度条来控制进度对话框的外观。

SetProgressorLabel

地理处理窗格中更新进度条标注。

SetProgressorPosition

地理处理窗格中更新进度条状态栏。

发布函数

函数描述

CreateGeocodeSDDraft

将定位器转换为服务定义草稿文件 (.sddraft),以供创建用于发布地理编码服务的服务定义。

CreateGPSDDraft

Result 对象和结果文件 (.rlt) 转换为服务定义草稿文件 (.sddraft)。

CreateImageSDDraft

将栅格或镶嵌数据集转换为服务定义草稿文件 (.sddraft)。

栅格函数

函数描述

GetImageEXIFProperties

用于从经地理标记的图像返回 EXIF 头信息。

NumpyArrayToRaster

将 NumPy 数组转换为栅格。

RasterToNumPyArray

将栅格转换为 NumPy 数组。

Render

通过将符号系统应用于引用的栅格数据集来创建渲染的栅格对象。 在 Jupyter 笔记本中显示数据时,此函数很有用。

空间参考和转换函数

函数描述

GenerateOptimalCoordinateSystem

生成一个具有自定义投影坐标系的 SpatialReference 对象,该坐标系最适用于地图或分析的指定范围和预期目的。

ListSpatialReferences

返回可用空间参考名称的列表,用作 SpatialReference 类的参数。

ListTransformations

返回有效变换方法列表。 对于某个特定的地理区域,可以使用区域范围来缩小有效变换方法列表的范围。

工具和工具箱函数

函数描述

AddToolbox

将指定的工具箱导入到 ArcPy 中,以便访问工具箱中的相关工具。

DecryptPYT

对加密的 Python 工具箱文件进行解密。

EncryptPYT

加密 Python 工具箱文件。

ImportToolbox

导入地理处理工具箱以用于 ArcPy,从而允许访问工具箱的关联工具。

IsSynchronous

确定工具是同步运行还是异步运行。当工具为同步运行时,会自动返回结果,但在完成同步之前不能执行任何其他操作。所有非服务器工具都是同步运行的。服务器工具可以是异步运行的,即向服务器提交某个工具后,无需等待即可使用其他功能,但必须向服务器明确请求结果。

ListToolboxes

返回工具箱列表。

ListTools

返回地理处理工具列表。

RemoveToolbox

通过指定其路径或引用其别名来移除指定的工具箱。 从当前地理处理会话中移除指定工具箱。 还可使用分号分隔符移除服务器工具箱。

相关主题