如何基于np.min编写正确的条件分支?现有代码逻辑存偏差
修正数组最小值判断的逻辑错误
原代码的问题在于判断逻辑完全写反,且没必要将布尔值包装成列表后与0比较,这会导致判断失效。根据你“当数组相加后的最小值为负数时返回0,否则返回该最小值”的需求,修正后的代码如下:
import numpy as np def q3(a1: np.ndarray, a2: np.ndarray): sum_arr = np.add(a1, a2) # 无需重复计算两次数组相加,一次即可 min_val = np.min(sum_arr) if min_val < 0: return 0 else: return min_val
关键修正说明:
- 移除重复的数组相加操作,用单个变量存储结果,提升代码效率
- 直接使用
min_val < 0作为判断条件,完全匹配需求逻辑 - 调整分支返回值:满足“最小值为负”的条件时返回0,否则返回计算得到的最小值
内容的提问来源于stack exchange,提问作者outofthereality
相关产品推荐
相关产品推荐

