stats = {'inventory': []}
stats['inventory'].append({'sand dollar': 10})所以基本上我现在想在沙元的数量上加1。我该怎么做呢?
发布于 2016-01-18 11:24:15
现在,inventory值是一个只有一项的列表,获取它:
stats['inventory'][0]['sand dollar'] += 1发布于 2016-01-18 11:32:43
由于inventory是一个列表,您需要检查列表中的每个元素,以找到持有沙子美元的元素,并对其进行递增:
>>> 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}}https://stackoverflow.com/questions/34846793
复制相似问题