微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ExecuteError: ERROR 000561: 所选图层的关系无效执行失败SelectLayerByLocation

如何解决ExecuteError: ERROR 000561: 所选图层的关系无效执行失败SelectLayerByLocation

我正在编写一个代码,其中 nhlroster.shp 特征类中的 nhl 球员只需要扮演以下三个位置中的一个:leftFeild、rightFeild、Center,并且所有球员都必须出生在瑞典。我的 arcpy.SelectLayerByLocation_management: RuntimeError: Object: Error in execution tool 不断收到此错误

import arcpy

arcpy.env.workspace = "C:/Users/jessi/Desktop/cpsUGeog485/project3_2021"
cntryFc = "Countries_wgs84.shp"
leftFeild = "LW"
rightFeild = "RW"
Center = "C"
cntryFeild = "CNTRY_name"
cntry = "Sweden"

#Select only players from target country
whereClause = cntryFeild + " =  '" + cntry + "'"
cntryLayer = arcpy.SelectLayerByAttribute_management(cntryFc,"NEW_SELECTION",whereClause)

#Create Loop for Target Positions
positionList = (leftFeild,rightFeild,Center) 
for plyrPositions in positionList:
    playerQuery = "plyrPosition = '" + plyrPositions + "'"
#Narrow down players born in sweden who play target positions
plyrLayer = arcpy.SelectLayerByLocation_management(cntryLayer,"Contains",positionList)

解决方法

您需要使用 arcpy.MakeFeatureLayer_management() 将 shapefile 制作成要素图层,如按位置选择 https://desktop.arcgis.com/en/arcmap/10.3/tools/data-management-toolbox/select-layer-by-location.htm 和按属性选择文档 https://desktop.arcgis.com/en/arcmap/10.3/tools/data-management-toolbox/select-layer-by-attribute.htm 的使用文档中所述;在您的按属性行选择中,“新选择”应为“NEW_SELECTION”。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。