如何不使用sys模块实现Python整数序列统计程序?
Python 实现:无sys模块的整数序列统计
下面是不依赖sys模块的实现代码,通过循环交互接收用户输入,完成指定的统计需求:
# 初始化统计变量 sum_total = 0 min_num = None max_num = None count_even = 0 count_odd = 0 total_count = 0 while True: # 获取用户输入的整数 try: num = int(input("请输入一个整数: ")) total_count += 1 # 更新总和 sum_total += num # 更新最小值 if min_num is None or num < min_num: min_num = num # 更新最大值 if max_num is None or num > max_num: max_num = num # 统计奇偶个数 count_even += 1 if num % 2 == 0 else 0 count_odd += 1 if num % 2 != 0 else 0 except ValueError: print("输入无效,请输入合法的整数!") continue # 询问是否继续输入 while True: choice = input("是否继续输入?(输入y继续/n结束): ").strip().lower() if choice in ('y', 'n'): break print("请输入有效的选项:y 或 n") if choice == 'n': break # 输出统计结果 if total_count > 0: average = sum_total / total_count print("\n--- 统计结果 ---") print(f"总和: {sum_total}") print(f"最小值: {min_num}") print(f"最大值: {max_num}") print(f"偶数个数: {count_even}") print(f"奇数个数: {count_odd}") print(f"平均值: {round(average, 2)}") else: print("未输入任何有效整数,无法生成统计结果!")
代码细节说明
- 变量初始化:用
None初始化最小/最大值,避免初始值(如0)干扰真实数据的统计;计数与总和变量初始化为0。 - 输入校验:通过
try-except捕获非整数输入的异常,提示用户重新输入,保证程序鲁棒性。 - 循环控制:外层循环处理整数输入,内层循环确保用户只能输入
y或n来控制是否继续,避免无效输入打断程序。 - 统计逻辑:每次输入有效整数后,实时更新所有统计变量,无需额外存储所有输入值,节省内存。
- 结果输出:先判断是否有有效输入,再计算并格式化输出结果,平均值保留两位小数提升可读性。
内容的提问来源于stack exchange,提问作者Harry Singh
相关产品推荐
相关产品推荐

