返回n维数组索引的Python函数

问题描述 投票:0回答:2

因此,我有一个函数可以在维度数组中查找类的位置,而另一个函数则可以使用该值并将其转换(或至少尝试转换为)可用于访问和返回该类的索引。

def get_class(condition1, condition2):
    key = ""
    if(condition1):
        key += "1 "
    else:
        key += "0 "
    if(condition2):
        key += "1 "
    else:
        key += "0 "
    key = get_key(key)

    return classes[key]

它的工作原理是沿字符串添加一个字符串,每个字符串表示在整个数组的特定轴上移动。

将其转换为索引的函数:

def get_key(value):
    key = value.split()
    for character in key:
        character = int(character)
        print(type(character))

    return key

应该将字符串转换为int,然后在数组上返回一个位置,但是我得到的只是这个错误:

TypeError: list indices must be integers or slices, not list

是否有更好的方法来执行此操作,或者我做错了什么?

编辑:

样本数据:

condition1 = Truecondition2 = False

类别= [[6,8],[21,754]]

python arrays multidimensional-array
2个回答
0
投票

您能否向我们提供完整的错误消息?


0
投票

根据您的代码,到达key时,return classes[key]是列表类型:

© www.soinside.com 2019 - 2024. All rights reserved.