关于arcpy.da模块下访问数据的问题

arcpy.da模块是否对数据的类型有要求?帮助文档中并没有读到相关介绍
import arcpy

in_table = "E:/MyArcpy/z008.shp"
field_name = "Name"
with arcpy.da.SearchCursor(in_table, field_name) as rows:
for row in rows:
print row[0]
访问文件夹中的shp格式数据,会出现RuntimeError: cannot open 'E:/MyArcpy/z008.shp'。这类型错误

import arcpy

in_table = "E:/MyArcpy/kk.gdb/k1009" # 将数据放入文件地理数据库中再进行访问

# 列名称
field_name = "Name"
# 获取首行指定字段的值
with arcpy.da.SearchCursor(in_table, field_name) as rows:
for value in rows:
print value[0]
但是将shp文件导入gdb为要素类后可以成功执行,如果说此模块对数据类型有要求,可以解释的通,但这还不是最奇怪的,看下面的这种操作

import arcpy

arcpy.env = "E:/MyArcpy/kk.gdb" # 设置工作空间再操作

# 列名称
field_name = "Name"
# 获取首行指定字段的值
with arcpy.da.SearchCursor("k1009", field_name) as rows:
for value in rows:
print value[0]
设置工作空间后访问工作空间内的要素类,执行后返回RuntimeError: cannot open 'k1009'。

注:k1009和z008是同一数据复制得来

请大神解疑答惑,万分感激
已邀请:

张佳期

赞同来自: GIS知乎

要回复问题请先登录注册