python 判断某个列表中的所有元素在另一个列表中 10
如:list1= ['a','b','c']
list2=['b','c','a'],那么这两个list相等
不要sort()之后判断相等。 展开
方法一、
test_list = [ 1, 6, 3, 5, 3, 4 ]
print("查看 4 是否在列表中 ( 使用循环 ) : ")
for i in test_list:
if(i == 4) :
print ("存在")
print("查看 4 是否在列表中 ( 使用 in 关键字 ) : ")
if (4 in test_list):
print ("存在")
以上实例输出结果为:
查看4是否在列表中(使用循环):
存在
查看4是否在列表中(使用in关键字):
存在
方法二、
>>>A=[1,2,3,4,5]
>>>B=[1,2,3]
>>>C=[1,2,3,4,5]
>>>set(A)<set(B)#A是B的真子集?False
False
>>>set(A)>set(B)#B是A的真子集?True
True
>>>set(A)>set(C)#C是A的真子集?False
False
>>>set(A)>=set(C)#C是A的子集?True
True
方法三、
from bisect import bisect_left
# 初始化列表
test_list_set = [ 1, 6, 3, 5, 3, 4 ]
test_list_bisect = [ 1, 6, 3, 5, 3, 4 ]
print("查看 4 是否在列表中 ( 使用 set() + in) : ")
test_list_set = set(test_list_set)
if 4 in test_list_set :
print ("存在")
print("查看 4 是否在列表中 ( 使用 sort() + bisect_left() ) : ")
test_list_bisect.sort()
if bisect_left(test_list_bisect, 4):
print ("存在")
以上实例输出结果为:
查看 4 是否在列表中 ( 使用 set() + in) :
存在
查看 4 是否在列表中 ( 使用 sort() + bisect_left() ) :
存在
方法四、