Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-Sum和Start_Python_Python 3.x_Sum - Fatal编程技术网

Python-Sum和Start

Python-Sum和Start,python,python-3.x,sum,Python,Python 3.x,Sum,尝试声明起始位置失败: >>> sum([1,2,3]) 6 文档显示sum(iterable[,start]) 有人能给我提供一个使用sum声明起始位置的示例吗。该起始值指的是sum起始值,而不是数组上的位置: : 将iterable的起始项和项从左到右求和,并返回总数 如果要实现这一点,可以使用列表切片: >>> sum([1,2,3],1) 7 这种切片不适用于迭代器,在这种情况下,您可以在生成器表达式中使用enumerate()。大概是这样的:

尝试声明起始位置失败:

>>> sum([1,2,3])
6

文档显示
sum(iterable[,start])

有人能给我提供一个使用sum声明起始位置的示例吗。

该起始值指的是sum起始值,而不是数组上的位置:

:

将iterable的起始项和项从左到右求和,并返回总数

如果要实现这一点,可以使用列表切片:

>>> sum([1,2,3],1)
7
这种切片不适用于迭代器,在这种情况下,您可以在生成器表达式中使用
enumerate()
。大概是这样的:

>>>sum([1,2,3][1:])
5
或者更好的是,正如@lvc在注释中指出的那样,使用函数分割迭代器:

>>> i=iter([1,2,3])
>>> sum(v for i,v in enumerate(i) if i >= 1)
5
该起始值表示总和起始值,而不是数组上的位置:

:

将iterable的起始项和项从左到右求和,并返回总数

如果要实现这一点,可以使用列表切片:

>>> sum([1,2,3],1)
7
这种切片不适用于迭代器,在这种情况下,您可以在生成器表达式中使用
enumerate()
。大概是这样的:

>>>sum([1,2,3][1:])
5
或者更好的是,正如@lvc在注释中指出的那样,使用函数分割迭代器:

>>> i=iter([1,2,3])
>>> sum(v for i,v in enumerate(i) if i >= 1)
5
该起始值表示总和起始值,而不是数组上的位置:

:

将iterable的起始项和项从左到右求和,并返回总数

如果要实现这一点,可以使用列表切片:

>>> sum([1,2,3],1)
7
这种切片不适用于迭代器,在这种情况下,您可以在生成器表达式中使用
enumerate()
。大概是这样的:

>>>sum([1,2,3][1:])
5
或者更好的是,正如@lvc在注释中指出的那样,使用函数分割迭代器:

>>> i=iter([1,2,3])
>>> sum(v for i,v in enumerate(i) if i >= 1)
5
该起始值表示总和起始值,而不是数组上的位置:

:

将iterable的起始项和项从左到右求和,并返回总数

如果要实现这一点,可以使用列表切片:

>>> sum([1,2,3],1)
7
这种切片不适用于迭代器,在这种情况下,您可以在生成器表达式中使用
enumerate()
。大概是这样的:

>>>sum([1,2,3][1:])
5
或者更好的是,正如@lvc在注释中指出的那样,使用函数分割迭代器:

>>> i=iter([1,2,3])
>>> sum(v for i,v in enumerate(i) if i >= 1)
5

或者使用itertools:
sum(islice(i,1,None))
@lvc我敢肯定!在那种情况下,这是一种更好的方法。非常感谢您指出:)或使用itertools:
sum(islice(i,1,None))
@lvc我敢肯定!在那种情况下,这是一种更好的方法。非常感谢您指出:)或使用itertools:
sum(islice(i,1,None))
@lvc我敢肯定!在那种情况下,这是一种更好的方法。非常感谢您指出:)或使用itertools:
sum(islice(i,1,None))
@lvc我敢肯定!在那种情况下,这是一种更好的方法。非常感谢您指出:)