python如何一步清除字典的重复值


x = dict(a = 1, b = 2, c = 3, d = 2, e = 4, f = 3)
y = ______  #存放无重复值的新字典初始化
for key, value in x.items():  #遍历字典x的键值对
    for v in y.values():  #遍历y的各个值
        if v == value:   #比较值是否相等
            _______
    else:
        y[key] = _____   #y字典追加新键值对
print(y)

对字典进行消除重复值,请问这些空该怎么填

消除重复指的是把两个都消掉吗?还是保留第一个或者第二个?


#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
if __name__ == '__main__':
    x = dict(a=1, b=2, c=3, d=2, e=4, f=3)
    y = {}
    for key, value in x.items():  # 遍历字典x的键值对
        for v in y.values():  # 遍历y的各个值
            if v == value:  # 比较值是否相等
                break   # 如果相等,跳出内层循环
        else:
            y[key] = value  # y字典追加新键值对
    print(y)

楼主应该先把 y 的值写出来,现在看你说的有歧义,主要就是if语句中使用continue和break的区别

x = dict(a = 1, b = 2, c = 3, d = 2, e = 4, f = 3)
y = {}  #存放无重复值的新字典初始化
for key, value in x.items():  #遍历字典x的键值对
    for v in y.values():  #遍历y的各个值
        if v == value:   #比较值是否相等
            continue
    else:
        y[key] = value   #y字典追加新键值对
print(y)