为了账号安全,请及时绑定邮箱和手机立即绑定

字典中某个键的 KeyError

字典中某个键的 KeyError

陪伴而非守候 2023-12-12 20:29:08
我有一本字典(cell0),其键如下所示。很明显,我的字典中有一个名为“46”的键。我已经确认该密钥中有正确的数据。当我使用 for 循环并尝试迭代字典来执行某些任务时,它显示“KeyError:46”。谁能帮助理解为什么会发生这种情况?cell0.keys()我执行了以下填充操作以使所有数组的大小相同。for key in cell0:for i in cell0[i]:    x = cell0[i]['I'].shape    x = sum(x)    y = cell0[i][key].shape    y = sum(y)    l = (x-y)    if x != y:        cell0[i][key] = np.pad((cell0[i][key]),[(0,l)],mode='constant', constant_values=0)当我使用上面的代码运行单元时,我收到这样的错误。KeyError                                  Traceback (most recent call last)<ipython-input-9-0955afc863ef> in <module>  1 for key in cell0:  2   ----> 3     for i in cell0[i]:  4         x = cell0[i]['I'].shape  5         x = sum(x)KeyError: 46
查看完整描述

1 回答

?
达令说

TA贡献1821条经验 获得超6个赞

如果 cell0 是字典,则不能对其进行切片 ----> for i in cell0[i]

考虑到 'dict_keys'(cell0.keys()) 对象也是不可下标的

您可以使用 cell0.items() 来访问键和值

请注意,最好使用 cell0.get(key) 方法来访问字典中的值

for key, value in cell0.items():
     x = value.get("I").shape()
     ...# your code


查看完整回答
反对 回复 2023-12-12
  • 1 回答
  • 0 关注
  • 78 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信