C/C++教程

Arcpy学习笔记(五)-列出数据

本文主要是介绍Arcpy学习笔记(五)-列出数据,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.ListDatasets:

摘要:列出工作空间中的所有数据集。可以针对数据集名称和数据集类型指定搜索条件,从而限制返回的列表。

说明:必须先设置工作空间环境,之后才能使用多个列表函数,这些列表函数包括 ListDatasets、ListFeatureClasses、ListFiles、ListRasters、ListTables 和 ListWorkspaces。

语法:

返回值:

ListFeatureClasses:

摘要:列出工作空间的要素类、受名称、要素类型和可选要素数据集的限制

说明:也是要先设置工作空间环境、之后才能使用多个列表函数、这些列表函数包括。

语法:

返回值:

 代码示例:

ListFeatureClasses:

将shapefile复制到地理数据库中。

#将shapefile复制到地理数据库中
import os
import arcpy
# Set the workspace for ListFeatureClasses
arcpy.env.workspace = "c:/base"
# Use the ListFeatureClasses function to return a list of
#  shapefiles.
featureclasses = arcpy.ListFeatureClasses()
# Copy shapefiles to a file geodatabase
for fc in featureclasses:
    arcpy.CopyFeatures_management(
        fc, os.path.join("c:/base/output.gdb",
                         os.path.splitext(fc)[0]))

 示例二:列出地理数据库中所有的要素类,包括要素数据据中的所有要素类。

import arcpy
import os
arcpy.env.workspace = "c:/base/gdb.gdb"
datasets = arcpy.ListDatasets(feature_type='feature')
datasets = [''] + datasets if datasets is not None else []
for ds in datasets:#遍历要素数据集
    for fc in arcpy.ListFeatureClasses(feature_dataset=ds):#从数据集中遍历要素类
        path = os.path.join(arcpy.env.workspace, ds, fc)
        print(path)

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

语法:这里field可以理解为字段的意思。(只是自己的理解)

返回值:

 

#ListFields 示例

#列出字段属性。

import arcpy
# For each field in the Hospitals feature class, print
#  the field name, type, and length.
fields = arcpy.ListFields("c:/data/municipal.gdb/hospitals")
for field in fields:
    print("{0} is a type of {1} with a length of {2}"
          .format(field.name, field.type, field.length))

#ListFields 示例 2

#生成字段名称列表。

import arcpy
featureclass = "c:/data/municipal.gdb/hospitals"
field_names = [f.name for f in arcpy.ListFields(featureclass)]

这篇关于Arcpy学习笔记(五)-列出数据的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!