完善my_norm = [] for i in norm: if i == 0: break else: mf_norm = np.divide(mf_out, i) my_norm.append(mf_norm)
时间: 2024-02-10 19:05:16 浏览: 65
deconvlucy:使用 OpenCV 实现 Lucy-Richardson 算法
5星 · 资源好评率100%
好的,如果您想要将除数为 0 的元素跳过,并且在最终的结果中以 0 来代替,可以使用如下代码:
```python
import numpy as np
norm = [1, 2, 0, 4, 5, 0, 7, 8, 0]
mf_out = np.array([1, 2, 3])
my_norm = []
for i in norm:
if i == 0:
my_norm.append(0) # 将除数为 0 的元素替换为 0
continue
else:
mf_norm = np.divide(mf_out, i)
my_norm.append(mf_norm)
print(my_norm)
```
上述代码中,我们使用循环遍历列表 `norm` 中的每个元素,如果该元素为 0,则将 0 添加到结果列表 `my_norm` 中,并使用 `continue` 跳过当前循环,继续下一次循环;否则,使用 `np.divide()` 函数进行除法运算,将结果保存到 `my_norm` 列表中。
注意,我在代码中添加了一行 `my_norm = []`,用于定义空列表,这是必须的,否则会报错。同时,在代码中使用了 `append()` 函数将每次运算的结果添加到 `my_norm` 中,最终输出 `my_norm` 列表。
阅读全文