用字典中的值替换键

时间:2019-06-30 09:35:24

标签: python dictionary

词典中的新手问题。

我试图不使用iteritems就用值替换键,就像我在这里的一些答案中看到的那样。

我有2本字典。一个里面有东西,另一个是空的。我想保持第一个不变,但是打印第二个,并替换掉第一个的键和值。

例如:

d1 = {1:"hello", 2 : 10, 3 : 100.0}

d2的打印结果为"hello":1, 10:2, 100.0:3

这是我的尝试:

d1 = {1:"hello", 2 : 10, 3 : 100.0}
d2 = {}
for k in d1:
    d2[d1[k]] == d2[k]
print(d2)

我不太确定我哪里错了。

3 个答案:

答案 0 :(得分:2)

您的代码需要稍作改动才能使其按预期工作:

d1 = {1:"hello", 2 : 10, 3 : 100.0}
d2 = {}
for k in d1.keys():
    d2[d1[k]] = k
print(d2) # {'hello': 1, 10: 2, 100.0: 3}

请记住,values中的dict可能会重复,而keys不能重复(必须唯一),因此如果任何值在{{1}中会出现多次},这样操作之后,d1中的元素就会更少。

答案 1 :(得分:1)

尝试此代码:

 d1 = {1:"hello", 2 : 10, 3 : 100.0} 

d2 = dict([(value, key) for key, value in d1.items()]) 

for i in d2: 
    print(i, " :  ", d2[i]) 

答案 2 :(得分:0)

您也可以使用document.getElementsByClassName("test")[2].className += " specificItem";:-

.items()

希望对您有帮助。