删除具有指定索引的嵌套列表中的重复项
Remove duplicates in nested list with specified index
我想删除包含最大数量的列表(在此列表中为 16)
代码示例
Lst = [["D",16],["B",10],["A",13],["B",16]]
需要输出
Lst =[["B",10],["A",13]]
Lst = [["D",16],["B",10],["A",13],["B",16]]
max_elem = -float("inf")
for element in Lst:
if element[1] > max_elem:
max_elem = element[1]
for i in reversed(range(len(Lst))):
if Lst[i][1] == max_elem:
Lst.pop(i)
print(Lst)
您可以使用max
获取最大数量,然后使用列表理解过滤原始列表:
lst = [["D",16],["B",10],["A",13],["B",16]]
max_num = max(x[1] for x in lst)
output = [sublst for sublst in lst if sublst[1] < max_num]
print(output) # [['B', 10], ['A', 13]]
我想删除包含最大数量的列表(在此列表中为 16)
代码示例
Lst = [["D",16],["B",10],["A",13],["B",16]]
需要输出
Lst =[["B",10],["A",13]]
Lst = [["D",16],["B",10],["A",13],["B",16]]
max_elem = -float("inf")
for element in Lst:
if element[1] > max_elem:
max_elem = element[1]
for i in reversed(range(len(Lst))):
if Lst[i][1] == max_elem:
Lst.pop(i)
print(Lst)
您可以使用max
获取最大数量,然后使用列表理解过滤原始列表:
lst = [["D",16],["B",10],["A",13],["B",16]]
max_num = max(x[1] for x in lst)
output = [sublst for sublst in lst if sublst[1] < max_num]
print(output) # [['B', 10], ['A', 13]]