Python - 嵌套字典的新密钥

时间:2016-12-09 11:27:25

标签: python dictionary nested

Python noob在这里。我试图将一个播放器值列表(HP,xpos,ypos等)存储在嵌套字典中,以便于访问。所以..

players = {'John': {'HP': 10, 'xpos': 50, 'ypos': 46}}
print players['John']['HP']

这样可行,但如果以后再加入,我该如何添加/追加新玩家?我试过了:

players['Paul']['HP'] = 50

和...

players{'Paul': {'HP': 50, 'xpos': 10, 'ypos': 99}}

和...

players['Paul': {'HP': 50, 'xpos': 10, 'ypos': 99}]

所有这些都会产生各种错误。我该怎么做?

3 个答案:

答案 0 :(得分:0)

保罗的数据本身就是字典。你可以这样做:

players['Paul'] = {'HP': 50, 'xpos': 10, 'ypos': 99}

换句话说,您正在尝试将名为Paul的新播放器插入主players字典中,该字典将成为新密钥。该密钥本身与另一个字典相关联。

答案 1 :(得分:0)

您需要确定要添加或更新的值的键。例如,

players['John']["example"] = 5

{"example":5}添加到John中。 您可以使用dict的其他部分执行此操作,并使用更多值。

答案 2 :(得分:0)

# i prefer the keyword solution
players['Paul']  = dict(HP = 000, xpos = 000, ypos= 000)
players['Paul']['HP'] = 50
print players['Paul']['HP']
# 50

# here done by zip:
# basic example
_keys = ['HP', 'xpos', 'ypos']
_values = [50, 60, 70]
players['Paul'] = dict(zip(_keys, _values))
print players['Paul']['HP']
# 50