我正在研究python列表,以及如何使用for
语句动态生成它们。
我碰到了这个:
a = [0,1,2,3,4,5]
x = 1/sum([1/b for b in a])
但是这会导致被零除。
是否可以做类似
的操作x = 1/sum([1/b for b in a if b != 0])
在嵌套在列表声明内的条件内吗?
答案 0 :(得分:1)
您的语法[1/b for b in a if b != 0]
有效。
我猜您可以除以零的另一点是sum
的值为0。
result = sum([1/b for b in a if b != 0])
if result != 0:
x = 1/result
处理result
为零的情况。