前言
官方文档地址:https://resources.arcgis.com/zh-cn/help/main/10.2/
授人以鱼不如授人以渔!!
一、遍历要素类
1、我们需要提前设置好工作空间,然后调用 arcpy.ListFeatureClasses()
获取工作空间中的所有要素类,返回要素类名称的列表。
2、遍历所有要素类,将要素类复制带文件地理数据库中,调用的函数为:arcpy.CopyFeatures_management(要复制的要素类,文件地理数据库位置 + 复制进行之后的要素类名称)
.
1、 参数一如:E:\arcpy_study\Arcpy编程开发(从小白到大神)\测试文件\测试shap1.shp
2、参数二如:E:\arcpy_study\Arcpy编程开发(从小白到大神)\测试文件\data.gdb\测试shap1
这里特别需要注意的是,文件地理数据库中的要素类是不带后缀的,切记!!
实例代码如下:
import os.path
import arcpy
# 获取工作空间中的所有要素类
def get_all_feature_class():
# 输出的文件地理数据库的路径
out_path = unicode(r'E:\arcpy_study\Arcpy编程开发(从小白到大神)\测试文件\data.gdb', 'utf-8')
# 返回以b开头的所有要素类
# featureClassList = arcpy.ListFeatureClasses(wild_card='b*')
featureClassList = arcpy.ListFeatureClasses()
# 打印所有要素类
for fc in featureClassList:
print fc
# 将要素类复制到文件地理数据库中
for fc in featureClassList:
# os.path.splitext(fc)[0]:因为文件地理数据库中的要素没有后缀,所以要去掉fc的后缀
arcpy.CopyFeatures_management(fc, os.path.join(out_path, os.path.splitext(fc)[0]))
if __name__ == '__main__':
# 设置工作空间
arcpy.env.workspace = r"E:\arcpy_study\Arcpy编程开发(从小白到大神)\测试文件"
get_all_feature_class()
二、点对象的创建
# 点对象的创建
def point_create():
# 创建点对象
point = arcpy.Point(118.311888, 30.123456)
print point.Z
print point.X
print point.Y
if __name__ == '__main__':
# 设置工作空间
arcpy.env.workspace = r"E:\arcpy_study\Arcpy编程开发(从小白到大神)\测试文件"
point_create()