ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

Describe

  • 描述
  • 讨论
  • 语法
  • 代码示例

描述

Describe 函数返回的 Describe 对象包含多个属性,如数据类型、字段、索引以及许多其他属性。该对象的属性是动态的,这意味着根据所描述的数据类型,会有不同的描述属性可供使用。

Describe 属性被组织成一系列属性组。任何特定数据集都将获取其中至少一个组的属性。例如,如果要描述一个地理数据库要素类,您可访问 GDB 要素类、要素类、表和数据集属性组中的属性。所有数据,不管是哪种数据类型,总会获取通用 Describe 对象属性。

讨论

许多数据类型包括其他属性组中的属性。例如,如果要描述一个地理数据库要素类,您可访问 GDB 要素类、要素类、表和数据集属性组中的属性。

注:

在某些情况下,Describe 返回的对象并不包含为其设计的所有属性。例如,地图中图层的 Describe 对象不会包含 layer 属性集。只有在描述 .lyr 文件时,该属性才会存在。

如果试图访问 Describe 对象不具有的属性,它会抛出错误异常或返回空值(None、0 或 -1 或空字符串)。如果您对特定属性不是很确定,可以使用 Python 的 hasattr() 函数进行检查。

  • Describe 对象属性
  • ArcInfo Workstation 项目属性
  • ArcInfo Workstation 表属性
  • CAD 工程图数据集属性
  • CAD 要素类属性
  • Coverage 要素类属性
  • Coverage 属性
  • 数据集属性
  • dBASE 表属性
  • 编辑器追踪属性
  • 要素类属性
  • 文件属性
  • 文件夹属性
  • GDB 要素类属性
  • GDB 表属性
  • 几何网络属性
  • 地统计图层属性
  • LAS 数据集属性
  • 图层属性
  • 地图文档属性
  • 镶嵌数据集属性
  • Network Analyst 图层属性
  • 网络数据集属性
  • 宗地结构属性
  • Prj 文件属性
  • 栅格波段属性
  • 栅格目录属性
  • 栅格数据集属性
  • RecordSet 和 FeatureSet 属性
  • 关系类属性
  • 制图表达类属性
  • 逻辑示意图数据集属性
  • 逻辑示意图属性
  • 逻辑示意图文件夹属性
  • SDC 要素类属性
  • Shapefile 要素类属性
  • 表属性
  • 表视图属性
  • 文本文件属性
  • Tin 属性
  • 工具属性
  • 工具箱属性
  • 拓扑属性
  • VPF Coverage 属性
  • VPF 要素类属性
  • VPF 表属性
  • 工作空间属性

语法

Describe (value, {datatype})
参数说明数据类型
value

要描述的指定数据元素或地理处理对象。

String
datatype

数据的类型。仅当存在命名冲突(例如,如果地理数据库包含同名的要素数据集 (FeatureDataset) 和要素类 (FeatureClass))时需要此项。在这种情况下,数据类型将用于确定要描述的数据集。

(默认值为 None)

String

返回值

数据类型说明
Describe

返回的对象属性中包含被描述对象的详细信息。某些返回的对象属性会包含文本值或对象。

代码示例

Describe 属性示例(独立脚本)

以下独立脚本显示了脚本参数设置的图层中的一些图层和 describe 对象的属性。可针对地图中的图层文件或图层设置该参数。

import arcpy

# Get the layer as a parameter and describe it.
#
# The layer could be a layer in ArcMap (like "some_layer")
# Or, it could be a .lyr file (like "C:/data/some.lyr")
#
layerString = arcpy.GetParameterAsText(0)
desc = arcpy.Describe(layerString)

# Print selected layer and describe object properties
# 
print("Name: {}".format(desc.name))
if hasattr(desc, "layer"):
    print("Layer name: {}".format(desc.layer.name))
    print("Layer data source: {}".format(desc.layer.catalogPath))
    print(".lyr file: {}".format(desc.catalogPath))
else:
    print("Layer name: {}".format(desc.name))
    print("Layer data source: {}".format(desc.catalogPath))

if desc.FIDSet != '':
    print("Number of selected features: {}".format(len(desc.FIDSet.split(";"))))

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2021 Esri. | 隐私政策 | 法律声明