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)]