首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >添加到列表中的字典

添加到列表中的字典
EN

Stack Overflow用户
提问于 2016-01-18 11:21:27
回答 2查看 44关注 0票数 0
代码语言:javascript
复制
stats = {'inventory': []}

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

所以基本上我现在想在沙元的数量上加1。我该怎么做呢?

EN

回答 2

Stack Overflow用户

发布于 2016-01-18 11:24:15

现在,inventory值是一个只有一项的列表,获取它:

代码语言:javascript
复制
stats['inventory'][0]['sand dollar'] += 1
票数 0
EN

Stack Overflow用户

发布于 2016-01-18 11:32:43

由于inventory是一个列表,您需要检查列表中的每个元素,以找到持有沙子美元的元素,并对其进行递增:

代码语言:javascript
复制
>>> 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}]}

我建议将清单设置为字典,然后您可以直接查找清单项目名称,而不是在可能很长的列表中进行搜索,这会更方便:

代码语言:javascript
复制
>>> stats = {'inventory': {}}
>>> stats['inventory']['sand dollar'] = 10
>>> stats
{'inventory': {'sand dollar': 10}}
>>> stats['inventory']['sand dollar'] += 1
>>> stats
{'inventory': {'sand dollar': 11}}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34846793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档