这是客观化的: 编写一个函数来获得2个列表L1和L2,并构建并返回由列表L1和列表L2中的元素组成的第三个列表L3,即排除仅在L1或仅L2中的任何值。
问题: 我陷入了循环(只会采用alist和blist共享的值)。
我的代码:
alist=input("Enter words separated by space: " ).split(" ")
blist=input("Enter words separated by space: " ).split(" ")
clist=[" "]
for i in alist,blist:
if alist(i)==blist(i):
clist=alist(i)+blist(i)
return clist
答案 0 :(得分:2)
clist = []
for i in alist:
if i in blist:
clist.append(i)
print clist
您可以使用in
运算符检查其他列表中是否存在一个值。
例如:
alist = ["a", "b", "c"]
print "b" in alist # will print True
print "d" in alist # will print False
append
方法添加新项目。答案 1 :(得分:2)
纯列表理解
>>> alist = ["a", "b", "c"]
>>> blist = ["a", "d", "c"]
>>> [var for var in alist if var in blist]
['a', 'c']
以上是列表理解。 Documentation