如何检查2D列表中是否有对象

时间:2012-10-16 00:16:10

标签: python list

如何检查2D列表的特定索引中是否有对象?

我想访问该对象并将其作为另一个对象的参数发送。

此对象与2D列表不在同一个类中,但它位于导入的类中。

2 个答案:

答案 0 :(得分:3)

你能做的是

try :
    if my_array[i][j] : #Checks if the array contains something not empty
        if isinstance(my_array[i][j], YourObjectType) :
            print "We have a type YourObjectType at position %d, %d" % (i, j)
except : 
    print "Ouch, nothing in the position %d,%d" % (i, j)

答案 1 :(得分:1)

假设为此对象正确定义了__eq__,那么您可以这样做:

myObjInstance in itertools.chain.from_iterable(my2dList)

或者,如果这更符合您的要求:

假设您要检查外部索引x和内部索引y

try:
    if isinstance(my2dList[x][y], MyObjectClass):
        print "Yay! there's a MyObjectClass object there. Sending it off as a param to the other function now…"
        myOtherFunction(my2dList[x][y])
    else:
        print "Yay! there's an object there"
except IndexError:
    print "Boo! no object there"