处理可变长度的词典

2024-10-02 22:26:02 发布

您现在位置:Python中文网/ 问答频道 /正文

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

样本1

'ID': 'd1f1', 'counter': 1,'device_id': 35, 'equipment_id': 1, 20: 85.0, 14: 90.0, 43: 1, 34: 1

样本2

'ID': 'd1f1', 'counter': 1,'device_id': 35, 'equipment_id': 1, 20: 85.0, 14: 90.0, 43: 1

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

代码

ID = dict['device_id']
equipment = dict['equipment_id']
volts = dict[20]
power = dict[14]
health = dict[43]
status = dict[34]

在第二个字典中,没有键34的值。所以我想把状态值保存为null。但是如果我按当前的方式赋值,就会抛出一个键错误。有人能帮我处理这个问题吗。你知道吗

谢谢


Tags: 函数代码脚本iddb字典devicecounter
1条回答
网友
1楼 · 发布于 2024-10-02 22:26:02

如果dict不包含某个键,则似乎希望返回None。在这种情况下,可以使用get()函数。如果键不存在,则返回值或无。例如:

my_dict = {'a': 1}
a = my_dict.get('a')
b = my_dict.get('b')

在这种情况下,a的值将是1,b的值将是无。你知道吗

一个更“pythonic”的解决方案是使用try-except块,在该块中尝试获取值,在引发异常时返回None。你知道吗

my_dict = {'a': 1}

try:
    b = my_dict['b']
except KeyError:
    b = None

相关问题 更多 >