首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >处理可变长度的字典

处理可变长度的字典
EN

Stack Overflow用户
提问于 2019-11-19 05:47:38
回答 1查看 164关注 0票数 0

我有一个python脚本,其中有一个返回字典的函数。函数返回的字典长度是动态的。例如,返回的两个字典示例

样本1

代码语言:javascript
运行
复制
'ID': 'd1f1', 'counter': 1,'device_id': 35, 'equipment_id': 1, 20: 85.0, 14: 90.0, 43: 1, 34: 1

样本2

代码语言:javascript
运行
复制
'ID': 'd1f1', 'counter': 1,'device_id': 35, 'equipment_id': 1, 20: 85.0, 14: 90.0, 43: 1

在我的python脚本中,我解析这个字典并将这些值保存在db中。

代码

代码语言:javascript
运行
复制
ID = dict['device_id']
equipment = dict['equipment_id']
volts = dict[20]
power = dict[14]
health = dict[43]
status = dict[34]

在第二个字典中,键34没有值。因此,我希望将状态值保存为null。但是,如果我以当前的方式分配值,则会抛出一个关键错误。有人能帮我解决这个问题吗。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-19 05:53:56

似乎你想要返回零,如果一个迪克不包含一个特定的键。在这种情况下,您可以使用get()函数。如果键不存在,则返回值或无。例如:

代码语言:javascript
运行
复制
my_dict = {'a': 1}
a = my_dict.get('a')
b = my_dict.get('b')

在这种情况下,a的值为1,b的值为None。

更多的'pythonic‘解决方案是使用try -除了块,在那里您尝试获取值,并在异常引发时不返回任何值。

代码语言:javascript
运行
复制
my_dict = {'a': 1}

try:
    b = my_dict['b']
except KeyError:
    b = None
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58927420

复制
相关文章

相似问题

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