【发布时间】:2012-12-15 23:37:18
【问题描述】:
我正在尝试创建一个列表来计算每个列表列表中的价格数量。
使用以下代码:
print data['OtherBids']
我得到以下输出:
[[0.074, 0.073, 0.072, 0.03, 0.029, 0.024, 0.021, 0.02], [0.02, 0.02, 0.015], [0.026, 0.026, 0.02, 0.02, 0.02, 0.015], [0.0.02, 0.021, , 0.017], [0.077, 0.076, 0.074, 0.055, 0.045, 0.021], [0.053, 0.052, 0.051, 0.023, 0.022], [0.016, 0.016]]
根据粗略的数据,我们可以看到第一个列表中有 8 个元素,第二个列表中有 3 个,第三个列表中有 6 个等等......但是,当我尝试使用while循环生成数据,返回如下错误:
data['number'][a] = len(data['OtherBids'][a])
KeyError: 'number'
导致上述错误的代码是:
a = 0
b = len(data['OtherBids'])
while a <= b - 1:
for i in data['OtherBids']:
data['number'][a] = len(data['OtherBids'][a]).get
a = a + 1
有人知道我应该如何解决它吗?
【问题讨论】:
-
尝试打印
data,应该会清楚。 -
您没有
data['number']值。 -
您的
data没有"number"密钥。
标签: python dictionary while-loop