如何修改字典中值的列表?

时间:2013-04-09 17:26:27

标签: python list dictionary

如果我有这样的字典:

d = {'USA' : [0,0,0], 'CAN' : [0,0,0]}

如何更新值中的特定元素?

我的目标是将其更新为(例如)这样:

d = {'USA' : [0,1,0], 'CAN' : [1,0,0]}

我在想像

这样的东西
d['USA'] = d.get('USA')[1] +  1

d['CAN'] = d.get('CAN')[0] +  1

但这似乎不起作用。 有什么建议? 我希望这很清楚。

3 个答案:

答案 0 :(得分:4)

您的词典中有列表,因此表达式的d[key]部分会返回一个列表。只需继续添加[..]索引:

d['USA'][1] += 1
d['CAN'][0] += 1

如果更容易,可以使用中间变量将其分解:

sublist = d['USA']
sublist[1] += 1
sublist = d['CAN']
sublist[0] += 1

答案 1 :(得分:1)

最简单的方法就是说

d ['USA'] [1] + = 1

这将为您提供更新列表。

答案 2 :(得分:0)

待办事项

d['USA'][1]=d['USA'][1]+1
d['CAN'][0]=d['USA'][0]+1

在您的示例中,您使用一个数字替换整个列表。