您好我从外部API
电话获取值。我需要将这些值放在一个带有7个索引的数组中,不知道为什么它不起作用。我从Django
得到一个很好的错误:
不允许捕获不从BaseException
继承的类
我想将每个元素计算为var:
val[0] += 2509
val[1] += 19
我这样设置:
val = [0,0,0,0,0,0,0]
for item in post_values:
if item['value']:
try:
val[i] += item['value']
except float:
val[i] += 0
post_value.append(item['value'])
complete += item['value']
i += 1
这些是我得到的值:
2509
19
1448
1324
1434
2971
0
15
46
45
9
722
398
218
18
419
344
答案 0 :(得分:1)
你不能写except float
。
except
语句的try
子句旨在捕获异常。这就是你得到这个错误的原因。
如果您想了解变量item['value']
不是float
的情况,您应该val[i] += float(item['value'])
,并且在这种情况下捕获的异常是{{1} }:
ValueError
答案 1 :(得分:0)
您正试图下标浮动。不是{'value': some_number}
而是1584.5714285714287
,而不是字典。
您可以在调用try
时修改代码以执行item["value"]
,这样当1584
出现而不是字典时,代码将执行except
部分。