1

如果我有这样的字典:

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

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

4

3 回答 3

4

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

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

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

sublist = d['USA']
sublist[1] += 1
sublist = d['CAN']
sublist[0] += 1
于 2013-04-09T17:28:08.600 回答
1

最简单的方法就是说

d['美国'][1] += 1

这将为您提供更新的列表。

于 2013-04-09T17:29:23.307 回答
0

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

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

于 2013-04-09T17:28:30.523 回答