-
Python 官网:https://www.python.org/
-
Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单……
自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
—— 华罗庚
- My CSDN主页、My HOT博、My Python 学习个人备忘录
- 好文力荐、 老齐教室
Python内建函数sum(),大家再熟悉不过了吧,没少用她序列求和吧。😄明白易读,语句简洁。
Python 3.11.0 (main, Oct 29 2022, 21:50:32) [Clang 14.0.6 (https://android.googlesource.com/toolchain/llvm-project 4c603efb0 on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> sum((1, 2, 3, 4, 5, 6, 7, 8, 9))
45
>>> sum([1, 2, 3, 4, 5, 6, 7, 8, 9])
45
>>> sum({1, 2, 3, 4, 5, 6, 7, 8, 9})
45
>>> sum(range(10))
45
>>>
>>> c = dict.fromkeys((1, 2, 3, 4, 5, 6, 7, 8, 9))>>> c
{1: None, 2: None, 3: None, 4: None, 5: None, 6: None, 7: None, 8: None, 9: None}
>>> sum(c)
45
>>> a, b, c = 4, 5.6, 7.0
>>> sum((a, b, c))
16.6
>>>
我们一般用sum()对列表中的数值元素求和,殊不知她对元素是数值型对象的序列都可以求和。如元组、集合、字典的key以及变量序列。
但,您有没有想过,sum()还可以拉平二维数组,且可以对字符串为元素的列表操作,且不限二级序列长度,只要二级全是序列。
>>> nums = [[1, 2, 3], [4, 5, 6], [7, 8], [9]]
>>> sum(nums, [])
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>>
>>> d = [[1, 2, 3], [4, 5, 6], [7, 8], [9], ['f', 56]]
>>> sum(d, [])
[1, 2, 3, 4, 5, 6, 7, 8, 9, 'f', 56]
>>>
>>> chars = [["I'm", ' ', 'a'], [' '], ['old' 'man', '.'], ['My name'], [' is '], ['dream', ' ', 'elf', '.']]
>>> sum(chars, [])
["I'm", ' ', 'a', ' ', 'old man', '.', 'My name', ' is ', 'dream', ' ', 'elf', '.']
>>> ''.join(sum(chars, []))
"I'm a old man.My name is dream elf."
>>>
惊奇不?迷茫不?
感到惊奇和迷豆对啰!因为我等凡人,根本想不到把sum()用于这样子的场景。👀直到我读到大师的代码,顿时惊呆——还有这样子的操控!!!
一顿惊诧过后,喜欢钻牛🐮角尖的我(我73的,属相牛🐂),开启了“寻根”历程……
>>> help(sum)
>>>
Help on built-in function sum in module builtins:
sum(iterable, /, start=0)
Return the sum of a 'start' value (default: 0) plus an iterable of numbers
When the iterable is empty, return the start value.
This function is intended specifically for use with numeric values and may
reject non-numeric types.
(END)
语法
sum(iterable, /, start=0)
- 1、返回start(start的值默认为0)的值加上iterable的数值元素总和
- 2.、当iterable为空([ ],( ),{ }),返回start的值
- 3、此函数专门用于数值型对象,拒绝为非数值型对象服务
此三条乃sum()的常规用法,其实她还有第四条——
- 4.、连接列表,就是您前面看到的炫酷玩法。
正是这“连接列表”的第四条隐藏技能,可以换着花样玩儿花式——
- 奇异数组求和
>>> nums = [
... [1, 2, 3, 4],
... [5, 6, 7, 8],
... [9, 10, 11, 13]
... ,[
...
...
... ]
... ,
... [14, 15, 16]]
>>> nums
[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 13], [], [14, 15, 16]]
>>> sum(sum(nums, []))
124
>>> sum(range(17)) - 12
124
>>>
- 矩阵求和
>>> nums = [
... [1, 2, 3],
... [4, 5, 6],
... [7, 8, 9]
... ]
>>>
>>> sum(sum(nums, []))
45
>>> sum(range(10))
45
>>>
- 拼接字符串
>>> lis = [[''], ['城市', '新增本土', '无症状', ' 现有确诊', '高风险区'], ['重庆', '164', '7669', '2427', '3759'], ['北京', '1282', '3240', '6081', '3163'], ['广州广东', '1236', '6454', '20692', '974'], ['郑州河南', '130', '486', '3085', '1291'], ['']]
>>>print(','.join(sum(lis, [])))
,城市,新增本土,无症状,现有确诊,高风险区,重庆,164,7669,2427,3759,北京,1282,3240,6081,3163,广州广东,1236,6454,20692,974,郑州河南,130,486,3085,1291,
>>>
__上一篇:__ 代码实现“约瑟夫环”百科词条中的例子故事
__下一篇:__
我的HOT博:
- Hot:个人信息提取(1402阅读)
- Hot:生成100个随机正整数(1453阅读)
- 给定字符串提取姓名(字符串、list、re“零宽断言”)(1051阅读)
- 我的 Python.color() (Python 色彩打印控制)(1463阅读)
- python清屏(2206阅读)
- 回车符、换行符和回车换行符(2165阅读)
- Linux 脚本文件第一行的特殊注释符(井号和感叹号组合)的含义(1379阅读)
- pandas 数据类型之 Series(1403阅读)
- 聊天消息敏感词屏蔽系统(字符串替换 str.replace(str1, *) )(1500阅读)
- 练习:银行复利计算(用 for 循环解一道初中小题)(1408阅读)
- pandas 数据类型之 DataFrame(3007阅读)
- :班里有人和我同生日难吗?(蒙特卡洛随机模拟法)(2254阅读)
- Python字符串居中显示(3407阅读)
- 练习:求偶数和、阈值分割和求差( list 对象的两个基础小题)(1701阅读)
- 用 pandas 解一道小题(2056阅读)
- 可迭代对象和四个函数(1083阅读)
- “快乐数”判断(1286阅读)
- 罗马数字转换器(构造元素取模)(2324阅读)
- Hot:罗马数字(转换器|罗生成器)(5140阅读)
- Hot:让QQ群昵称色变的代码(42882阅读)
- Hot:斐波那契数列(递归| for )(4100阅读)
- 柱状图中最大矩形(1688阅读)
- 排序数组元素的重复起止(1286阅读)
- 电话拨号键盘字母组合(1460阅读)
- 密码强度检测器(2175阅读)
- 求列表平衡点(1875阅读)
- Hot: 字符串统计(4347阅读)
- Hot:尼姆游戏(聪明版首发)(3532阅读)尼姆游戏(优化版)(1242阅读)
推荐条件 点阅破千
回目录
精品文章:
- 好文力荐:《python 完全自学教程》齐伟书稿免费连载
- OPP三大特性:封装中的property
- 通过内置对象理解python'
- 正则表达式
- python中“*”的作用
- Python 完全自学手册
- 海象运算符
- Python中的 `!=`与`is not`不同
- 学习编程的正确方法
来源:老齐教室
回目录
Python 入门指南【Python 3.6.3】
好文力荐:
-
全栈领域优质创作者——寒佬(还是国内某高校学生)好文:《非技术文—关于英语和如何正确的提问》,“英语”和“会提问”是学习的两大利器。
-
【8大编程语言的适用领域】先别着急选语言学编程,先看它们能干嘛
-
靠谱程序员的好习惯
CSDN实用技巧博文:
- 8个好用到爆的Python实用技巧
- python忽略警告
- Python代码编写规范
- Python的docstring规范(说明文档的规范写法)