python列表推导式的应用,基础面试题

来源:互联网 发布:阿里云域名解析没生效 编辑:程序博客网 时间:2024/05/29 14:38

应用场景:
给定两个list ,A = [1,2,3,4,5,6,7,1,2,3]和B=[4,5,6,7,8,9,10,9,8,11],请用python找出A,B 中相同的元素放入列表D中,找出A,B中不同的元素放入列表C中,确保C、D两个列表中的元素不重复(用代码实现):

题目分析:
拿到题目后 我们首先得思路可能是 利用循环来进行比较,当然这样也可以写出此功能,但是当我们学会使用列表推导式 时前者就会显得很low.

A = [1,2,3,4,5,6,7,1,2,3]B=[4,5,6,7,8,9,10,9,8,11]D = [x for x in B if x in A]C = [x for x in set(A+B) if x not in D]代码如上,只需要两行即可完成以上题目