Python 测试numpy ndarray中是否存在列表?
我想知道numpy Ndaray中是否存在列表[a,b] 我试过这个:Python 测试numpy ndarray中是否存在列表?,python,arrays,numpy,Python,Arrays,Numpy,我想知道numpy Ndaray中是否存在列表[a,b] 我试过这个: list1 = np.array([[1, 2], [1, 3], [2, 4]]) [1, 5] in list1 True 结果是: list1 = np.array([[1, 2], [1, 3], [2, 4]]) [1, 5] in list1 True 似乎只检查第一个数字的存在,从而导致错误响应 检查列表是否存在的好方法是什么?这是一种方法: import numpy as np arr = np
list1 = np.array([[1, 2], [1, 3], [2, 4]])
[1, 5] in list1
True
结果是:
list1 = np.array([[1, 2], [1, 3], [2, 4]])
[1, 5] in list1
True
似乎只检查第一个数字的存在,从而导致错误响应
检查列表是否存在的好方法是什么?这是一种方法:
import numpy as np
arr = np.array([[1, 2], [1, 3], [2, 4]])
lst = np.array([1, 5])
any((lst==i).all() for i in arr) # False
lst = np.array([1, 2])
any((lst==i).all() for i in arr) # True
一个简单的方法是使用
tolist()
可能重复感谢您的回答。它工作得很好。为什么要将第二个列表(lst)转换为np数组?@Mairkur,您应该比较类似的类型,例如列表到列表或np.array到np.array。转换确保了这一点。