新闻中心

python中for循环如何对重复数字只求一次和_python中for循环去除重复数字后求和的技巧

2025-11-14
浏览次数:
返回列表
先用set去重再求和最高效。示例:numbers = [1, 2, 2, 3, 4, 4, 5],unique_sum = sum(set(numbers)) 输出15;若用for循环手动去重,可维护seen集合避免重复累加;需保持顺序时可用dict.fromkeys()去重后求和,推荐sum(set(data))简洁高效。

python中for循环如何对重复数字只求一次和_python中for循环去除重复数字后求和的技巧

在Python中,如果想用for循环对重复数字只求一次和(即去除重复元素后求和),关键在于先去重再求和。虽然可以用for循环实现,但结合集合(set)会更高效。以下是几种实用方法。

使用set()去重后求和

最直接的方式是将列表转为集合,自动去除重复项,再用sum()函数求和。

示例代码:

Reachout.ai Reachout.ai

一个AI驱动的视频开发平台,专为忙碌的企业家和销售团队打造

Reachout.ai 142 查看详情 Reachout.ai
numbers = [1, 2, 2, 3, 4, 4, 5]
unique_sum = sum(set(numbers))
print(unique_sum)  # 输出:15

这行代码先通过set(numbers)得到{1, 2, 3, 4, 5},然后sum计算总和。

用for循环手动去重并累加

如果坚持使用for循环来控制过程,可以维护一个已访问集合,避免重复添加。

示例代码:

numbers = [1, 2, 2, 3, 4, 4, 5]
seen = set()
total = 0
<p>for num in numbers:
if num not in seen:
total += num
seen.add(num)</p><p>print(total)  # 输出:15

这种方式适合需要在去重过程中加入额外逻辑的场景,比如打印首次出现的数。

使用列表推导式+set保持顺序(可选)

若需保留数字第一次出现的顺序,可用字典去重(Python 3.7+ dict保持插入顺序)。

示例代码:

numbers = [3, 1, 2, 2, 1, 4, 5, 4]
unique_sum = sum(dict.fromkeys(numbers))
print(unique_sum)  # 输出:15

dict.fromkeys(numbers)会创建一个键为numbers中唯一值、值为None的字典,自动去重且保持顺序。

基本上就这些常用技巧。日常推荐直接用sum(set(data)),简洁高效。需要控制流程时再用for循环配合辅助集合判断。

以上就是python中for循环如何对重复数字只求一次和_python中for循环去除重复数字后求和的技巧的详细内容,更多请关注其它相关文章!


# 解决问题  # SEO网站受欢迎程度  # 网站定制推广  # 阜宁网站优化价格报价表  # 网站seo标题查询  # 定安seo公司  # 鄱阳seo优化  # seo方案怎么制作  # 上海服务网站建设大全  # 湘潭团组织网站建设  # 营销推广策划课怎么上的  # python入门  # 几种  # 中文网  # 相关文章  # 可以用  # 首次  # 源代码  # 如何将  # 如何使用  # 转换为  # python 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: 必由学官方网站入口 必由学学生教师共用登录通道  PDO预处理语句中冒号的正确处理:区分SQL函数格式与命名占位符  不同用户不同价格! 索尼开启账户个性化定价测试  谷歌邮箱注册显示错误Gmail服务器异常与延迟处理  在J*a中如何开发简易博客标签推荐系统_博客标签推荐项目实战解析  Safari浏览器输入栏卡顿如何解决 Safari搜索建议与缓存清理  “在文档元素之后找到了标记”是什么错误? 检查并修复XML中多个根元素的3个方法  在python-socketio事件处理器中安全访问Flask应用上下文  QQ邮箱在线使用入口 QQ邮箱个人账号网页版登录  妖精动漫免费平台 妖精动漫官网资源观看网址  抖音DOU+怎么投最有效 抖音付费推广的ROI提升技巧  深入理解Go语言中Map值与方法接收器的交互:为什么需要临时变量  正确连接J*aScript到HTML实现可点击图片与自定义事件处理  c++如何使用std::memory_order控制原子操作顺序_c++ C++11内存模型详解  PHP 枚举:根据字符串获取枚举案例的策略与实现  谷歌浏览器怎么给标签页静音_Chrome标签静音快捷操作  漫蛙2在线漫画入口 漫蛙正版漫画网页版直达  Go语言中对Map值调用带指针接收者方法:原理与最佳实践  迅雷下载到U盘速度很慢怎么办_迅雷U盘下载慢优化方法  解决Flask中Quill编辑器内容提交失败及TypeError的指南  照顾宝贝2小游戏点击立即在线玩  深入理解Promise链:如何在catch后中断then的执行  c++如何实现单例设计模式_c++线程安全的单例模式写法  解决 Vaadin 8 中大文件音频播放与定位时出现的 IOException  C++如何实现线程池_C++11手动实现一个简单的固定大小线程池  AO3网页版最新入口合集 Archive of Our Own在线访问指南  学习通在线学习平台 学习通网页版直接进入课程中心  KFC套餐升级怎么获取优惠代码_KFC套餐升级活动与优惠代码获取方法  Win10怎么制作U盘启动盘 Win10系统安装U盘制作教程【详解】  qq邮箱日历功能怎么用_创建日程与会议邀请的技巧  神经网络二分类模型训练异常:高损失与完美验证准确率的排查与修正  MAC怎么让Dock栏只显示当前运行的应用_MAC终端命令实现极简Dock栏  海量存储:机器视觉智能化的核心基石  怎么在浏览器上运行HTML文件_浏览器运行HTML文件技巧【技巧】  优化大型XML文件解析:基于Python流式处理的内存高效方案  纯CSS与HTML网格布局的HTML精简策略:SVG与JS方案解析  LINUX的perf命令入门_LINUX官方性能分析工具的使用与解读  使用Python高效删除Word宏并转换DOCM为DOCX格式  豆包手机助手发布技术预览版:直接嵌入手机系统!努比亚样机发售  Golang如何实现容器化日志收集与分析_Golang容器日志收集分析方法  美团外卖商家服务中心入口 美团商家版官网入口  C++如何生成随机数_C++ random库使用方法与范围设置  Fabric模组开发:自定义物品与物品组的现代管理方法  Win11截图该按哪些键 Win11截屏完整流程解析【教程】  地铁跑酷免费秒玩入口链接 地铁跑酷小游戏免费秒玩网站  mysql通配符支持数字匹配吗_mysql通配符能否用于数字匹配的解析  优化LangChain文档加载与ChromaDB集成:解决多文档处理与分块问题  Golang切片为何属于引用类型_Golang slice底层结构与引用语义说明  J*a如何使用AtomicInteger控制计数_J*a无锁计数器性能分析  优化Log4j2控制台输出性能:解决异步日志瓶颈 

搜索