在python中使用一些条件从表中获取特定值

在python中使用一些条件从表中获取特定值,python,conditional-statements,arcpy,Python,Conditional Statements,Arcpy,我有一个表格,表格中的每个不同值都是不同条件组合的结果。例如,下图中的条件如下:如果coverType=休耕,治疗=作物残留覆盖,条件/不渗透面积=良好,SoilType=C,则该值等于83。我想要一个工具,要求用户从每列中选择一个值(例如,选择CoverType;SoilType,…),然后返回相关数字作为输出。你有什么想法我该怎么做? 到目前为止,我只有以下代码的第一行: 除非您仅限于ArcGIS 10.0或更早版本,否则我建议使用。语法比较简单 然而,你肯定在正确的轨道上。光标允许您在表

我有一个表格,表格中的每个不同值都是不同条件组合的结果。例如,下图中的条件如下:如果coverType=休耕,治疗=作物残留覆盖,条件/不渗透面积=良好,SoilType=C,则该值等于83。我想要一个工具,要求用户从每列中选择一个值(例如,选择CoverType;SoilType,…),然后返回相关数字作为输出。你有什么想法我该怎么做? 到目前为止,我只有以下代码的第一行:


除非您仅限于ArcGIS 10.0或更早版本,否则我建议使用。语法比较简单

然而,你肯定在正确的轨道上。光标允许您在表格中循环,并查找三个类别与用户输入匹配的行

cover_type = #userinput
treatment = #userinput
condition = #userinput

field_list = ["CoverType", "Treatment", "Condition", "B"]
with arcpy.da.SearchCursor(table, field_list) as cursor:
    for row in cursor:
        if row[0] == cover_type and row[1] == treatment and row[2] == condition:
            print row[3]
        else:
            print "no matching combination"

如果是ArcPy,我认为您最好在Stack Exchange进行研究/询问。
cover_type = #userinput
treatment = #userinput
condition = #userinput

field_list = ["CoverType", "Treatment", "Condition", "B"]
with arcpy.da.SearchCursor(table, field_list) as cursor:
    for row in cursor:
        if row[0] == cover_type and row[1] == treatment and row[2] == condition:
            print row[3]
        else:
            print "no matching combination"