Python Arcpy更新光标IO错误“;";不存在

Python Arcpy更新光标IO错误“;";不存在,python,arcpy,Python,Arcpy,我编写了这个快速脚本,以根据包围它们的等高线查找测深多边形的最小深度: # Import system modules import arcpy import arcpy.da # Set environment settings arcpy.env.workspace = "C:\Working" area ="conta" line = "contl" for i in area: arcpy.SelectLayerByLocation_management(line, 'in

我编写了这个快速脚本,以根据包围它们的等高线查找测深多边形的最小深度:

# Import system modules
import arcpy
import arcpy.da

# Set environment settings
arcpy.env.workspace = "C:\Working"

area ="conta"
line = "contl"

for i in area:
    arcpy.SelectLayerByLocation_management(line, 'intersect', area)
    arcpy.SelectLayerByAttribute_management(line, 'subset_selection',
            """[DEPTH] in (SELECT min( [DEPTH] ) FROM contl)""")

    cursor = arcpy.UpdateCursor(i)
    for row in cursor:
        row.setValue('DEPTHMIN',row.getValue(line['DEPTH']))
        cursor.updateRow(row)

del cursor
选择工作正常,但当我尝试通过更新游标运行实例时,会出现以下错误:

Traceback (most recent call last):
  File "<string>", line 30, in <module>
  File "c:\program files (x86)\arcgis\desktop10.2\arcpy\arcpy\__init__.py", line 1199, in UpdateCursor
    return gp.updateCursor(dataset, where_clause, spatial_reference, fields, sort_fields)
  File "c:\program files (x86)\arcgis\desktop10.2\arcpy\arcpy\geoprocessing\_base.py", line 364, in updateCursor
    self._gp.UpdateCursor(*gp_fixargs(args, True)))
IOError: "c" does not exist
回溯(最近一次呼叫最后一次):
文件“”,第30行,在
文件“c:\program files(x86)\arcgis\desktop10.2\arcpy\arcpy\\uuuuu init\uuuuuu.py”,第1199行,在UpdateCursors中
返回gp.updateCursor(数据集、where_子句、空间_引用、字段、排序_字段)
文件“c:\program files(x86)\arcgis\desktop10.2\arcpy\arcpy\geoprocessing\\u base.py”,第364行,在UpdateCursors中
self.\u gp.updateCursors(*gp\u fixargs(args,True)))
IOError:“c”不存在

我不确定Python要找的
“c”
是什么。

问题就在这里:
arcpy.env.workspace=“c:\Working”

您需要做的是:

arcpy.env.workspace=r“C:\Working”

arcpy.env.workspace=“C:/Working”

编辑:
你的第一个线索是这是一个IO错误。它无法将(O部分)输出到环境路径。这可能是由于许多原因造成的,但在您的例子中,是包含转义字符
\
的路径把整个事情搞砸了。因此,您需要使用正斜杠
/
,或者在字符串前面放一个
r
,以向解释器表明它应该作为
原始
字符串处理

问题就在这里:
arcpy.env.workspace=“C:\Working”

您需要做的是:

arcpy.env.workspace=r“C:\Working”

arcpy.env.workspace=“C:/Working”

编辑:
你的第一个线索是这是一个IO错误。它无法将(O部分)输出到环境路径。这可能是由于许多原因造成的,但在您的例子中,是包含转义字符
\
的路径把整个事情搞砸了。因此,您需要使用正斜杠
/
,或者在字符串前面放一个
r
,以向解释器表明它应该作为
原始
字符串处理

问题就在这里:
arcpy.env.workspace=“C:\Working”

您需要做的是:

arcpy.env.workspace=r“C:\Working”

arcpy.env.workspace=“C:/Working”

编辑:
你的第一个线索是这是一个IO错误。它无法将(O部分)输出到环境路径。这可能是由于许多原因造成的,但在您的例子中,是包含转义字符
\
的路径把整个事情搞砸了。因此,您需要使用正斜杠
/
,或者在字符串前面放一个
r
,以向解释器表明它应该作为
原始
字符串处理

问题就在这里:
arcpy.env.workspace=“C:\Working”

您需要做的是:

arcpy.env.workspace=r“C:\Working”

arcpy.env.workspace=“C:/Working”

编辑: 你的第一个线索是这是一个IO错误。它无法将(O部分)输出到环境路径。这可能是由于许多原因造成的,但在您的例子中,是包含转义字符
\
的路径把整个事情搞砸了。因此,您需要使用正斜杠
/
,或者在字符串前面放一个
r
,以向解释器表明它应该作为
原始
字符串处理

主要问题在于:

area ="conta"
for i in area:
area
是一个字符串,所以当您对字符串对象中的i使用
时,您将迭代字符串中的“字符”。迭代的第一步是字母“c”,它不作为数据源存在

路径问题也必须解决。

主要问题如下:

area ="conta"
for i in area:
area
是一个字符串,所以当您对字符串对象中的i使用
时,您将迭代字符串中的“字符”。迭代的第一步是字母“c”,它不作为数据源存在

路径问题也必须解决。

主要问题如下:

area ="conta"
for i in area:
area
是一个字符串,所以当您对字符串对象中的i使用
时,您将迭代字符串中的“字符”。迭代的第一步是字母“c”,它不作为数据源存在

路径问题也必须解决。

主要问题如下:

area ="conta"
for i in area:
area
是一个字符串,所以当您对字符串对象中的i使用
时,您将迭代字符串中的“字符”。迭代的第一步是字母“c”,它不作为数据源存在

路径问题也必须解决