Other articles


  1. 检查多维 ndarray 中是否有某元素

    最近又在写科学计算的代码了。今天偶然发现一个 Numpy 中的一个小问题,不注意的话还是很容易踩坑的。

    通常来说,检查一个类似列表的对象中是否有某个元素,最直接的办法是用 in。这个方法对列表、字典、元组等都适用,对一维的 ndarray 对象也适用,例如:

    a = [1, 2, 3]
    print(4 in a)
    b = np.array(a)
    print(4 in b)
    

    结果是False False

    但是,如果这个 ndarray 是二维的数组,结果就非常奇怪了:

    a = [[0,0], [0,1]]
    print([0,2] in a …
    read more

links

social