dict_data = {'1-0': [5400, 3601],
'1-1': [2550, 1651],
'1-3': [5400, 3601],
'1-4': [5400, 3601],
'1-5': [5400, 3601],
'10-0': [3601, 2700]}
在这个例子中,我想得到的输出是所有的值,所以这个例子的输出应该是一个列表列表,在打印所有元素时给出这些值,基本上这个值应该只出现一次我们将创建的列表列表现在与dict_data
中的值或键显示的次数相关:
[2550, 1651]
[5400, 3601]
[3601, 2700]
答案 0 :(得分:2)
这应该有效
set(map(tuple, dict_data.values()))
示例输出:
{(2550, 1651), (3601, 2700), (5400, 3601)}
与列表列表相比,这不会丢失任何信息,但如果您确实需要这种格式,那么您可以这样做:
[list(t) for t in set(map(tuple, dict_data.values()))]
输出
[[5400, 3601], [2550, 1651], [3601, 2700]]
答案 1 :(得分:2)
列表不可清,所以为什么不使用循环:
L = []
for v in dict_data.values():
if v not in L:
L.append(v)
答案 2 :(得分:2)
如果您保留一组已经看到的内容,您可以在线性时间内执行此操作:
seen = set()
for v in dict_data.values():
curr = tuple(v)
if curr not in seen:
seen.add(curr)
print(list(seen))
哪个输出:
[(5400, 3601), (2550, 1651), (3601, 2700)]