dict = {0: ['2', '6'], 1: ['2'], 2: ['3']}
print("Original: ")
print(dict)
for key,vals in dict.items():
vals = [int(s) for s in vals]
print("New: ")
print(dict)
输出:
Original:
{0: ['2', '6'], 1: ['2'], 2: ['3']}
New:
{0: ['2', '6'], 1: ['2'], 2: ['3']}
我无法理解为什么值列表没有改变,我已经尝试过map()函数,它也不起作用,有什么原因吗?
答案 0 :(得分:2)
在Python 3中:
dict = {k: list(map(int, v)) for k, v in dict.items()}
答案 1 :(得分:1)
因为您没有覆盖字典中的实际值。尝试做:
for key,vals in dict.items():
dict[key] = [int(s) for s in vals]
实际上,凭着字典理解它看起来好多了。我只是试图展示代码中应该更改的内容。