Skip to main content
 首页 » 编程设计

python之两个列表的不区分大小写的比较

2025年05月04日17shangdawei

我有 2 个列表。第一个是 list_A = ['Sasi', 'Babu', 'kuttapppan', 'mathayi'] 我的第二个列表是 list_B = ['Raman', 'Kesavan', 'sasi ', 'unni', 'Kuttappan'].

我想比较这两个列表并识别在第二个列表中重复的值,无论它是以大写字母还是小写字母开头。我尝试了以下方法:

if not [name for name in list_A if name in list_B]: 
     print name 

但它没有按预期工作。

请您参考如下方法:

实际上你可以在一个列表理解中做到这一点:

list_A = ['Sasi', 'Babu', 'kuttappan', 'mathayi'] 
list_B = ['Raman', 'Kesavan', 'sasi', 'unni', 'Kuttappan', 'SaSi'] 
 
duplicated = [b for b in list_B if b.lower() in (a.lower() for a in list_A)] 
print(duplicated) 

这样它在比较小写时返回原始值。使用集合将返回小写值并删除 list_B 中的所有重复值。