import arcpy
fc = r'H:\H-ONUS UTILITY DATA GIS\As_Builts\2014\RandolphPoint_Phase2\789-AS-BUILT 8-7-13.dwg\Polyline'
out_gdb = r'H:\H-ONUS UTILITY DATA GIS\As_Builts\2014\RandolphPoint_Phase2\RandolphPoint.gdb.gdb'
field = 'Layer'
values = [row[0] for row in arcpy.da.SearchCursor(fc, (field))]
uniqueValues = set(Values)
for value in uniqueValues:
sql = """Layer" = '{0}'""".format(Value)
name = arcpy.ValidateTableName(value,out_gdb)
arcpy.FeatureClassToFeatureClass_conversion(fc, out_gdb, name, sql)我正在尝试使用文件地理数据库作为工作空间将CAD(dwg)转换为ArcGIS 10.2.2要素类。我刚刚在一次ESRI会议上学到了这段代码,当然,它对insturtor来说工作得很好。
我得到的错误是"NameError:name' values‘is not defined“,但是我把它定义为values=[ arcpy.da.SearchCursor(fc,(Field))中行对应的行]我已经为此工作了几个小时,这对我的工作有很大的帮助。
发布于 2014-05-10 21:31:04
Python变量区分大小写。
您已经声明了带有小写v的values,但是您在下一行引用它时使用了大写V。
(进一步向下与value/Value相同。
发布于 2014-05-15 02:47:58
import arcpy
fc = r'H:\H-ONUS UTILITY DATA GIS\As_Builts\2014\RandolphPoint_Phase2\789ASBUILT.dwg\Polyline'
out_gdb = r'H:\H-ONUS UTILITY DATA GIS\As_Builts\2014\RandolphPoint_Phase2\RandolphPoint.gdb'
field = 'Layer'
value = [row[0] for row in arcpy.da.SearchCursor(fc, (field))]
uniquevalues = set(value)
for value in uniquevalues:
sql = """"Layer" = '{0}'""".format(value)
name = arcpy.ValidateTableName(value,out_gdb)
arcpy.FeatureClassToFeatureClass_conversion(fc, out_gdb, name, sql)以下是解决方案,我在地理数据库路径中添加了一个额外的.gdb
我的单词值是值,所以必须去掉s
另外,在我的sql语句中,我在单词Layer之前漏掉了一个
如果任何人正在阅读这篇文章,只需更改各个参数,它就会工作得很漂亮!
感谢Juffy的回应并试图帮助我
卡特盖尔
https://stackoverflow.com/questions/23571230
复制相似问题