Skip to main content
 首页 » 编程设计

python之从两个列表中找到相同的元素并打印两个列表中的元素

2025年05月04日17txw1958

有两个列表:

k = ['a', 'a', 'b', 'b', 'c', 'c', 'd', 'e'] 
l = ['a', 'c', 'e'] 

我想从这两个列表中找到相同的元素,即: ['a', 'c', 'e']

然后我想从两个列表中打印出我们找到的元素,例如'a',即:['a', 'a', 'a'] .

我想要的结果如下:

['a', 'a', 'a', 'c', 'c', 'c', 'e', 'e'] 

我尝试这样做:

c = [] 
for item_k in k: 
   for item_j in j: 
      if item_k== item_j: 
          c.append(item_k) 
      c.append(item_j) 

然而,结果是['a', 'a', 'c', 'c', 'e', 'e']

也可以这样:

c=[] 
for item_k in k: 
   if item_k in l: 
      c.append(item_k) 
      d=l.count(item_k) 
      c.append(item_k*d) 
      print c 

但是它不起作用,谁能告诉我该怎么做?非常感谢您的提前帮助

请您参考如下方法:

result = [x for x in sorted(k + l) if x in k and x in l] 
print(result) 

结果:

['a', 'a', 'a', 'c', 'c', 'c', 'e', 'e']