Python中&、^与and、or

导火索:给定两个列表,怎么找出他们相同的元素和不通的元素?

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
list1 = [1, 2, 3, 4, 57, 8, 90]
list2 = [2, 3, 4, 5, 6, 7, 8]
lis = list1 + list2
print('&的结果:', set(list1) & set(list2))
print('^的结果:', set(list1) ^ set(list2))
print('and的结果:', set(list1) and set(list2))
print('or的结果:', set(list1) or set(list2))

结果:

&的结果: {8, 2, 3, 4}
^的结果: {1, 5, 6, 7, 57, 90}
and的结果: {2, 3, 4, 5, 6, 7, 8}
or的结果: {1, 2, 3, 4, 8, 57, 90}

总结:

& 不等于and,|不等于or

&、^代表的是位运算符,and\or代表的是逻辑运算符

&的源码:

def __and__(self, *args, **kwargs): # real signature unknown
    """ Return self&value. """
    pass
发布了706 篇原创文章 · 获赞 738 · 访问量 102万+

猜你喜欢

转载自blog.csdn.net/sinat_38682860/article/details/104040120