尝试访问矩阵外部时获取特定值

Dar*_*ver 2 python numpy matrix

在尝试获取NumPy矩阵之外的值时,是否可以接收指定值(例如0)?

例如:

#getItem - some method which do what i want
a = numpy.array([[1, 2], [3, 4]])
getItem(a, 1, 1) # == 4
getItem(a, -1, 1) # == 0
Run Code Online (Sandbox Code Playgroud)

当然我可以手工完成,但在Python中这些方法可能会有不好的表现.

Cor*_*mer 5

您可以使用try/ exceptblock来处理无效索引

def getItem(a, i, j):
    try:
        return a[i,j]
    except IndexError:
        return 0

>>> getItem(a, 1, 1)
4
>>> getItem(a, 2, 5)
0
Run Code Online (Sandbox Code Playgroud)