>>> a = [0, 1] >>> b = [1, 1, 1, 1, 1] >>> [x in a for x in b] [True, True, True, True, True]
wdc63
2018-05-21 20:33:47 +08:00
>>> from numpy import * >>> a = array([False, False, False, True, True, True, False, False, False, False, False, False]) >>> b = array([True, True, True]) >>> [ i for i in b if i not in a ] [] >>> b = array([True, True, 123]) >>> [ i for i in b if i not in a ] [123]
空集为真,非空集为假
wdc63
2018-05-21 20:37:04 +08:00
本质上还是循环,算法复杂度是没变的。 如果你的需求是求解集合子集,那不允许出现重复元素,直接转换成 set,用 in 判断是否子集 如果你的需求中包含了元素顺序,那就比较困难了。