当我想展开一个列表时,我发现了一种类似下面的方式:
>>> a = [[1, 2], [3, 4], [5, 6]]
>>> a
[[1, 2], [3, 4], [5, 6]]
>>> sum(a, [])
[1, 2, 3, 4, 5, 6]
我不知道这些行中发生了什么,文档说明:
sum(iterable[, start])
资金
start
和一个项目iterable
从左至右并返回总。start
默认为0
。可迭代的项通常是数字,并且该start
值不允许为字符串。在某些用例中,可以使用替代
sum()
。连接字符串序列的首选快速方法是调用
''.join(sequence)
。要以扩展的精度添加浮点值,请参见math.fsum()
。要串联一系列可迭代对象,请考虑使用itertools.chain()
。2.3版的新功能。
您不认为开头应该是数字吗?为什么可以[]
在这里写?
(sum(a, []))
您不认为开头应该是数字吗?
start
是 数字,默认情况下;0
,根据您引用的文档。因此,当您执行例如:
sum((1, 2))
它被视为0 + 1 + 2
等于3
并且等于所有人都感到高兴。如果要从其他数字开始,则可以提供该数字:
>>> sum((1, 2), 3)
6
到现在为止还挺好。
但是,您还可以使用其他东西+
,例如列表:
>>> ['foo'] + ['bar']
['foo', 'bar']
但是,如果尝试使用sum
此方法,但期望得到相同的结果,则会得到TypeError
:
>>> sum((['foo'], ['bar']))
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
sum((['foo'], ['bar']))
TypeError: unsupported operand type(s) for +: 'int' and 'list'
因为它正在做0 + ['foo'] + ['bar']
。
要解决此问题,您可以提供自己的start
as []
,这样它就变得[] + ['foo'] + ['bar']
一切都很好。所以回答:
为什么
[]
可以在这里写?
因为虽然start
默认为一个数字,它不 具备 成为一个; 也可以添加其他内容,这对于 与您当前正在执行的 操作 完全一样的 方便。
MariaDB 函数用于返回表达式求和的值。 语法: 数据准备 在数据库中创建一个表,并插入一些数据。参考以下创建语句 - 1. SUM()函数与单表达式 示例: 计算大于的表的总分数。参考以下查询语句 - 执行上面查询语句,得到以下结果 - 2. SUM()函数与DISTINCT子句 可以使用函数的子句来避免重复值的总和。 再插入一条重复的数据 - 当前数据库中的记录如下 - 示例: 执行上面查
问题内容: 是否可以在另一个MySql SUM()函数中使用MySql SUM()函数? 像下面 谢谢 问题答案: 您只需要一个: 或在每个字段上使用:
SUM() 函数 SUM() 函数返回数值列的总数。 SQL SUM() 语法SELECT SUM(column_name) FROM table_name; 演示数据库 在本教程中,我们将使用 RUNOOB 样本数据库。 下面是选自 "access_log" 表的数据: mysql> SELECT * FROM access_log; +-----+---------+-------+----
Sum 函数示例 此示例使用订单表计算对于送货至英国订单的合计销售额。 此示例调用过程 EnumFields 过程,且可以在 SELECT 语句示例中找到该过程。 Sub SumX() Dim dbs As Database, rst As Recordset ' 在您的计算机中修改此行使其正确指到 Northwind 的路径。 Set dbs = OpenDatabase("Northwind.
Sum 函数 返回包含在指定查询字段中一组值的总计。 语法 Sum(expr) 其中 expr 代表一个字符串表达式,它或者标识一个字段,该字段包含要计算的数据;或者是一个表达式,它使用此字段中的数据来执行计算。 expr中的运算对象可能包括一个表字段名,一个常数或一个函数(可能是内在的,也可能是用户自定义的,但不是 SQL 合计函数)。 说明 Sum 函数求字段中值的总和。例如,可用 Sum 函
返回列表中元素的总和。 语法 (Syntax) sum(lst) 参数 (Parameters) Lst - 元素列表。 返回值 (Return Value) 返回列表中元素的总和。 例如 (For example) -module(helloworld). -import(lists,[sum/1]). -export([start/0]). start() -> Lst1 =