我试过这个,但是我不知道我的代码出了什么问题,它打印了正确的值,但是,当我追加它打印的值时没有,以及它一直在说行中有错误if L1[q]==L2[q]:
a= [3,1,4,5]
b= [3,4,5]
def intersect(L1,L2):
q=0
w=0
li=[]
if len(L1)>len(L2):
while q<len(L1):
for i in L1:
if L1[q]==L2[q]:
print li.append(L1[q])
q+=1
else:
L1.remove(L1[q])
if len(L2)>len(L1):
while w<len(L2):
for i in L2:
if L2[w]==L1[w]:
print li.append(L2[q])
q+=1
else:
L2.remove(L2[q])
intersect(a,b)
答案 0 :(得分:1)
您可以使用集合来获取两个列表的交集,如:
<强>代码:强>
def intersect(L1, L2):
print(list(set(L1) & set(L2)))
测试代码:
a = [3, 1, 4, 5]
b = [3, 4, 5, 6]
intersect(a, b)
<强>结果:强>
[3, 4, 5]
答案 1 :(得分:0)
a= [3,1,4,5]
b= [3,4,5]
print(list(set(a)&set(b))) #<===
<强> RESULT 强>
[3,4,5]