如何用if语句技巧在Python中求解指定二维数组的最值与平均值
用if语句实现二维数组的最值与平均值计算
嘿,我来帮你搞定这个需求!咱们完全通过if语句的条件判断来手动找出给定二维数组的最大值、最小值,同时计算平均值,不用依赖Python内置的max()、min()这类函数,话不多说直接上代码和解释:
完整代码
# 定义给定的二维数组 x = [[80,59,34,89],[31,11,47,64],[29,56,13,91],[55,61,48,0],[75,78,81,91]] # 初始化最大值、最小值为数组的第一个元素作为基准 max_val = x[0][0] min_val = x[0][0] total_sum = 0 element_count = 0 # 遍历二维数组的每一行 for row in x: # 遍历当前行的每个元素 for num in row: # 用if判断更新最大值:如果当前元素比当前最大值大,就替换 if num > max_val: max_val = num # 用if判断更新最小值:如果当前元素比当前最小值小,就替换 if num < min_val: min_val = num # 累加元素总和和计数 total_sum += num element_count += 1 # 计算平均值 average = total_sum / element_count # 输出结果 print(f"数组的最大值: {max_val}") print(f"数组的最小值: {min_val}") print(f"数组的平均值: {average}")
运行结果
数组的最大值: 91 数组的最小值: 0 数组的平均值: 54.65
代码逻辑解释
- 初始化基准值:我们把数组的第一个元素
x[0][0]作为初始的最大值和最小值,这样后续所有元素都能和这个基准做比较。 - 双层遍历数组:外层遍历每一行,内层遍历每行中的每个元素,确保每个元素都被检查到。
- if条件判断更新最值:
- 每次拿到一个元素,先判断它是否比当前
max_val大,如果是,就更新max_val为这个元素; - 再判断它是否比当前
min_val小,如果是,就更新min_val为这个元素;
- 每次拿到一个元素,先判断它是否比当前
- 统计总和与元素数:遍历过程中同时累加所有元素的总和,统计元素的总个数,最后用总和除以个数得到平均值。
这样就完全通过if语句的技巧实现了需求,没有使用任何内置的最值函数,逻辑清晰易懂~
内容的提问来源于stack exchange,提问作者XinfintyX
相关产品推荐
相关产品推荐

