Python 读取循环中的csv将在不匹配的行停止

Python 读取循环中的csv将在不匹配的行停止,python,csv,arcgis,arcpy,Python,Csv,Arcgis,Arcpy,我试图读取csv,然后在sde中迭代以找到匹配的特征及其字段,然后打印它们。 列表中有一个表,我不能跳过它继续阅读csv。 我得到了“IOError:表1不存在”,我只得到了表之前的特性 import arcpy from arcpy import env import sys import os import csv with open('C:/Users/user/Desktop/features_to_look_for.csv', 'r') as t1: objectsinESR

我试图读取csv,然后在sde中迭代以找到匹配的特征及其字段,然后打印它们。 列表中有一个表,我不能跳过它继续阅读csv。 我得到了“IOError:表1不存在”,我只得到了表之前的特性

import arcpy
from arcpy import env
import sys
import os
import csv

with open('C:/Users/user/Desktop/features_to_look_for.csv', 'r') as t1:
    objectsinESRI = [r[0] for r in csv.reader(t1)]

env.workspace = "//conn/features@dev.sde"
fcs = arcpy.ListFeatureClasses('sometext.*')

for fcs in objectsinESRI:
    fieldList = arcpy.ListFields(fcs)
    for field in fieldList:
        print fcs + " " + ("{0}".format(field.name))
示例csv行(似乎无法发布excel文件的屏幕截图)

结果

feature 1
feature 2
feature 3
feature 4
期望结果

feature 1
feature 2
feature 3
feature 4
feature 5
feature 6
feature 7
feature 8
feature 9

如上所述,我对arcpy一无所知,但这似乎是开始的方式。请看,您的objectsInEsri似乎与示例中的数据集相当。从这里我推断出以下代码,这取决于打印(fc)的打印内容,您可能需要使用另一个进行扩展

所以试试这个:

for object in objectsInEsri:
    for fc in fcs:
        print(fc)
或者可能是这样:

for object in objectsInEsri:
    for fc in fcs:
        for field in arcpy.ListFields(fc)
            print(object + " " + ("{0}".format(field.name)))

那么我可能完全错了ofc,但只需先写下最外层,看看给了你什么,然后继续从那里构建:)

你得到了错误的哪一行?fieldList=arcpy.ListFields(fcs)(虽然这里对arcpy了解不多)需要注意的可疑事项:首先,您正在覆盖对象中fcs的fcs:a)fcs=arcpy.ListFeatureClass('sometext.*')b)如前所述,这里没有专家,但您的代码看起来非常可疑(在获取ListFeatureClass时,在不使用它的情况下重新编写fcs变量)与上一个示例中的文档中所做的完全不同:交叉发布为
for object in objectsInEsri:
    for fc in fcs:
        for field in arcpy.ListFields(fc)
            print(object + " " + ("{0}".format(field.name)))