当前位置: 首页 > news >正文

python的数据统计与处理

需求:
输入一个由逗号分隔的整数列表,完成以下操作:
计算最大值、最小值、平均值
输出去重后的升序列表

功能说明
最大值、最小值和平均值计算:
使用 Python 的内置函数 max 和 min。
平均值通过 sum 除以列表长度计算。

去重并升序:
使用集合 set 去重后转换回列表并排序。

输入处理:
将用户输入字符串通过 split 和 map(int, …) 转换为整数列表。

代码实现:

class Function:def __init__(self):self.num_list = []def calculate_max(self):return max(self.num_list)def calculate_min(self):return min(self.num_list)def calculate_avg(self):return sum(self.num_list) / len(self.num_list)def get_unique_sorted_list(self):return sorted(set(self.num_list))if __name__ == '__main__':# 用户输入并转换为整数列表input_list = input("请输入一组由逗号分隔的整数,例如:1,2,3,4: ")num_list = list(map(int, input_list.split(',')))# 创建 Function 对象function = Function()function.num_list = num_list# 执行功能并输出结果print(f"最大值: {function.calculate_max()}")print(f"最小值: {function.calculate_min()}")print(f"平均值: {function.calculate_avg():.2f}")print(f"去重后的升序列表: {function.get_unique_sorted_list()}")

基于 class 类方式实现数据统计与处理功能:

功能说明
面向对象设计:

使用 NumberStats 类封装所有与数字统计相关的功能,每个统计操作为一个方法。
类在初始化时接收一个整数列表作为输入。

calculate_max:返回最大值。
calculate_min:返回最小值。
calculate_avg:计算并返回平均值。
get_unique_sorted_list:返回去重后的升序排列列表。

异常处理:
增加了 try-except 块,确保用户输入的数据格式正确,避免运行时错误。

代码实现:

class NumberStats:def __init__(self, num_list):"""初始化时接收一个整数列表"""self.num_list = num_listdef calculate_max(self):"""计算最大值"""return max(self.num_list)def calculate_min(self):"""计算最小值"""return min(self.num_list)def calculate_avg(self):"""计算平均值"""return sum(self.num_list) / len(self.num_list)def get_unique_sorted_list(self):"""获取去重后的升序列表"""return sorted(set(self.num_list))if __name__ == '__main__':# 用户输入并转换为整数列表input_list = input("请输入一组由逗号分隔的整数,例如:1,2,3,4: ")try:# 转换为整数列表num_list = list(map(int, input_list.split(',')))# 创建 NumberStats 对象stats = NumberStats(num_list)# 调用类的方法并输出结果print(f"最大值: {stats.calculate_max()}")print(f"最小值: {stats.calculate_min()}")print(f"平均值: {stats.calculate_avg():.2f}")print(f"去重后的升序列表: {stats.get_unique_sorted_list()}")except ValueError:print("输入数据有误,请确保输入的是逗号分隔的整数。")

http://www.mrgr.cn/news/78447.html

相关文章:

  • Ubuntu系统上安装和启动SSH服务
  • 【HarmonyOS开发模板/组件分享 – 用户隐私政策弹窗】
  • AI赋能编程学习:开启高效学习之旅
  • Linux Shell 脚本题目集
  • Python学习35天
  • tailwindcss中解决border不显示及自定义颜色
  • ChatGPT/AI辅助网络安全运营之-数据解压缩
  • 《气候变化研究进展》
  • 搭建私有云存储
  • AI界的信仰危机:单靠“规模化”智能增长的假设,正在面临挑战
  • 【C++】cin、cout基础编程题:完整解析与优化解法
  • 水体分割检测 包含YOLOV,COCO,VOC三种标记的数据集包含 857张图片
  • Android Glide批量加载Bitmap,拼接组装大Bitmap,更新单个AppCompatImageView,Kotlin(3)
  • SQL Server 中的游标:介绍、效率、使用场景及替代方法对比
  • 嵌入式C语言技巧15:深入浅出:多线程编程中锁的选择与优化策略
  • Linux(ubuntu)系统的一些基本操作和命令(持续更新)
  • java全栈day10--后端Web基础(基础知识)之续集
  • 全面了解 Cookies、Session 和 Token
  • 华为OD机试真题---开心消消乐
  • 《大气科学学报》
  • C++中智能指针的使用及其原理 -- RAII,内存泄漏,shared_ptr,unique_ptr,weak_ptr
  • 算法交易 - 理解什么是空头交易
  • Android 自定义应用选择器对话框
  • 浅谈网络 | 应用层之HTTPS协议
  • android 安全sdk相关
  • 韩顺平 一周学会Linux | Linux 实操篇-组管理和权限管理