2016-01-18 92 views
0
stats = {'inventory': []} 

stats['inventory'].append({'sand dollar': 10}) 

所以基本上我现在想添加一个沙量美元。我将如何做到这一点?添加到列表中的字典

回答

0

inventory值是一个单一的项目列表现在,得到它:

stats['inventory'][0]['sand dollar'] += 1 
0

由于库存列表,您需要检查每一个元素在列表中找到一个拿着沙钱和做增量为它:

>>> stats = {'inventory': []} 
>>> stats['inventory'].append({'sand dollar': 10}) 
>>> stats 
{'inventory': [{'sand dollar': 10}]} 
>>> for item in stats['inventory']: 
...  if isinstance(item, dict) and 'sand dollar' in item: 
...   item['sand dollar'] += 1 
...   break 
... 
>>> stats 
{'inventory': [{'sand dollar': 11}]} 

我建议你做库存的字典,然后你可以做的存货项目名称,而不是在一个潜在的一长串搜索直接查找,方便多了:

>>> stats = {'inventory': {}} 
>>> stats['inventory']['sand dollar'] = 10 
>>> stats 
{'inventory': {'sand dollar': 10}} 
>>> stats['inventory']['sand dollar'] += 1 
>>> stats 
{'inventory': {'sand dollar': 11}}