列表a是否包含列表b中的所有元素,两种方法

1.转换成集合(set),求交集后判断是否与较小的列表相等

   适用于已知的列表

a = [3, 5, 4, 1, 2, 7, 6]
b = [3, 4, 5, 6, 7]
if set(a)&set(b) == set(b):
    print "a包含b的所有元素"

2.列表通过逻辑操作比较

a = [3, 5, 4, 1, 2, 7, 6]
b = [3, 4, 5, 6, 7]

c = [False for i in b if i not in a]    #for前面的条件是True 也是可以的,需要后面使用过程中在做研究
if c:
    print "a不包含b的所有元素"
else:
    print "a包含b的所有元素"

 推导:

a = [3, 5, 4, 1, 2, 7, 6]
b = [3, 4, 5, 6, 7]
c = []

for i in b:
    if i not in a:
        c.append(i)
if c:
    print "a不包含b的所有元素"
else:
    print "a包含b的所有元素"

 

 

参考地址:

https://blog.csdn.net/vitaminc4/article/details/78971055

http://www.iplaypy.com/jichu/set.html

 

posted on 2018-10-10 20:46  你猜我猜你猜我猜不猜  阅读(242)  评论(0编辑  收藏  举报