【发布时间】:2020-03-22 19:36:28
【问题描述】:
我有以下嵌套列表:
parameterList = [[0, -40, 0.001, 'No Ageing'], [0, -35, 0.001, 'No Ageing'], [0, -40, 0.001, 'No Ageing']]
我正在尝试设置一个脚本来删除嵌套列表中的重复项:
res = list(set(map(lambda i: tuple(sorted(i)), parameterList)))
# print result
print("The list after duplicate removal : " + str(res))
同理:
res = list(set(tuple(sorted(sub)) for sub in parameterList))
但我收到错误消息:str 和 int 的实例之间不支持 <
知道有什么问题吗?
【问题讨论】:
-
sorted() 的目的是什么?我认为不需要。
-
但是 sorted() 并不是应用于整个集合,而是应用于每个列表。
-
您的列表包含不同类型的成员,因此很难比较。 0(整数)是否小于“hello”(字符串)?这个问题没有意义。这就是您在该错误消息中被告知的内容。您可以将所有内容都转换为字符串,或者您可以尝试按照其他人的建议删除 sorted。
标签: python list nested duplicates