我想将字典的所有值都更改为1(浮点数),我在网上进行了研究,但似乎人们很少有这种随机需求。
字典有成千上万的条目,下面是其中的一部分
{
'2015': [2.8216107792591907],
'2016': [2.3686578052627687],
'2017': [2.03069274701226]
}
有人可以给我一些想法吗?谢谢!
答案 0 :(得分:5)
myDict = {key : 1.0 for key in myDict}
答案 1 :(得分:2)
for element in my_dict:
my_dict[element] = 1.0
答案 2 :(得分:1)
您可以尝试以下方法:
d = {x: 1.0 for x in d}
这将创建一个新字典d,它将d中的每个键(旧键)映射到1。
答案 3 :(得分:1)
我相信使用iterkeys()
效率很高。
for k in d.iterkeys():
d[k] = [1.0]
您还可以使用fromkeys()
在一行中无循环地进行相同操作:
d = d.fromkeys(d, [1.0])
希望有帮助!
答案 4 :(得分:0)
d = {key : 1.0 for key in d.keys()}