从列表中删除重复项?
问题描述:
Possible Duplicate:
Python: removing duplicates from a list of lists从列表中删除重复项?
从列表中删除重复项的最佳方法是什么?
我试图用这样设置:
L1 = [['fox', 'dog'],['bat', 'rat'],['fox', 'dog']]
L1 = list(set(L1))
不幸的是,我得到一个类型错误:unhashable类型: '名单'。
在我的列表中有两个['狐狸','狗')出现。我想L1除去重复,看起来像这样:
L1 = [“狐狸”,“狗”],[“蝙蝠”,“鼠”]
答
如果转换内部名单你将能够元组将它们添加到一组成功的,例如:
>>> set(map(tuple, L1))
set([('fox', 'dog'), ('bat', 'rat')])
如果有必要,你可以回到列表的列表如下:
>>> map(list, set(map(tuple, L1)))
[['fox', 'dog'], ['bat', 'rat']]