要求: 一个列表,含有多个字典,字典中的key是一样的,值有的一样有的不一样。从列表中去掉完全重复的字典。 例如 有如下列表: L = [{'k1':'v1','k2':'v2'},{'k1':'v1','k2':'v3'},{'k1':'v1','k2':'v2'},{'k1':'v2','k2':'v2'},{'k1':'v1','k2':'v2'}] 期望结果: L = [{'k1':'v1','k2':'v2'},{'k1':'v1','k2':'v3'},{'k1':'v2','k2':'v2'}] 代码: #!/usr/bin/python def uniqueList(L): (output, temp) = ([],[]) for l in L: for k, v in l.iteritems(): flag = False if (k,v) not in temp: flag = True break if flag: output.append(l) temp.extend(l.items()) return output L = [{'k1':'v1','k2':'v2'},{'k1':'v1','k2':'v3'},{'k1':'v1','k2':'v2'},{'k1':'v2','k2':'v2'},{'k1':'v1','k2':'v2'}] print uniqueList(L)