我的脚本在ArcMap中运行,没有错误,但属性选项卡中没有填充任何内容

2024-09-29 21:23:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个试图合并的属性表:“Test_Table”和“AST_PASS4_Copy”。“PASS4_Copy”表包含多个具有相同AI_ID但具有不同位置描述(文本格式)的行。“测试表”每个AI_ID只包含1个条目

我试图将“AST_PASSS4_Copy”中的位置描述合并到“Test_Table”表中,以便“Test_Table”如下所示:

AI_ID_1 |说明1、说明2、说明3 AI_ID_2|说明1、说明2、说明3 AI_ID_3|说明1、说明2、说明3

我主要尝试使用arcpy.da.SearchCursor和arcpy.da.updateCursors。我用同样的脚本处理另一个数据集的类似问题,它成功了。这次,我只处理了字段名和文件名。当我输入errors.keys()时,它显示为空

使用arcpy.da.UpdateCursor('Test_Table',['MASTER_AI','LOC_DESC'])作为uc:

ct = 1

errors = {}

for row in uc:

    with arcpy.da.SearchCursor('AST_PASS4_Copy', ['LOCATION_D'], where_clause="MASTER_AI_ID='{}'".format(str(row[0]))) as sc:

        loc = []

        for loc in sc:

            loc.append(str(loc[0]))

    if len(loc) > 0:

        row[1] = '; '.join(set(loc))

    print("{}-{}".format(row[0],ct))

    ct += 1

    try:

        uc.updateRow(row)

    except Exception as e:

        errors[row[0]] = (row, e)

打印(错误)

没有显示任何错误消息。脚本返回{},运行“errors.keys()时返回[]


Tags: testidtableastlocaidarow

热门问题