我想检查子列表中的特定元素,并删除python中具有相同元素的重复子列表

我想检查子列表中的特定元素,并删除python中具有相同元素的重复子列表,python,list,python-3.x,unique,Python,List,Python 3.x,Unique,我有这个 lst = [['100','LA'],['101','NY'],['100','NC']] lst2 = [] 我需要检查是否有任何100101等重复,并删除重复的数字。所以第二个列表是这样的 lst2=[['100','LA'],['101','NY']] 因为100已经在第二个列表中添加了一次一种快速而肮脏的方法是使用通用唯一性过滤器: 然后,您可以像这样使用它: list2 = list(uniqueness(lst,key=lambda x:x[0])) 如果不指定,则

我有这个

lst = [['100','LA'],['101','NY'],['100','NC']]
lst2 = []
我需要检查是否有任何100101等重复,并删除重复的数字。所以第二个列表是这样的

lst2=[['100','LA'],['101','NY']]

因为100已经在第二个列表中添加了一次

一种快速而肮脏的方法是使用通用唯一性过滤器:

然后,您可以像这样使用它:

list2 = list(uniqueness(lst,key=lambda x:x[0]))

如果不指定,则筛选器将假定整个元素(但此处将失败,因为
list
不可散列)。

执行此操作的一种快速而肮脏的方法是使用通用唯一性筛选器:

然后,您可以像这样使用它:

list2 = list(uniqueness(lst,key=lambda x:x[0]))

如果不指定,则筛选器将假定整个元素(但此处将失败,因为
列表
不可散列)。

没有lambda的答案

nmbrs = [n for n, city in lst] 

lst2 = [x for i, x in enumerate(lst) if x[0] not in nmbrs[:i]]

没有lambda的回答

nmbrs = [n for n, city in lst] 

lst2 = [x for i, x in enumerate(lst) if x[0] not in nmbrs[:i]]

它工作得很好,谢谢。实际上,我并不需要高效的代码,所以没关系:Dit工作得很好,谢谢。实际上,我并不需要高效的代码,所以没关系:谢谢你的帮助。谢谢你的帮助。