#!/usr/bin/env python
# -*- coding: utf-8 -*-
# sum的最常见用法计算一个序列的累加和
print(sum([1, 2, 3]))
# 6
# # sum 函数原型是 sum(iterable, start), 还可以给个初始值
print(sum([1, 2, 3], 10))
# 16
# 另外一个比较Hack一些的用法, 展开2层的嵌套列表
iterable = [[1, 2], [3, 4], [5, 6], [7, 8]]
start = [0]
print(sum(iterable, start))
# [0, 1, 2, 3, 4, 5, 6, 7, 8]
# sum函数是和下面的过程是等效的
for element in iterable:
start += element
print(start)
# [0, 1, 2, 3, 4, 5, 6, 7, 8]
# 实际上sum可以看成reduce()的特殊情况
from functools import reduce
from operator import add
start = []
print(reduce(add, iterable, start))
# [1, 2, 3, 4, 5, 6, 7, 8]
本文介绍了Python内置函数sum的基本使用方法及高级技巧,包括计算序列的累加和、给定初始值进行累加以及如何展开两层嵌套列表。此外,还通过与reduce函数的对比,帮助读者更深入地理解sum函数的工作原理。

1万+

被折叠的 条评论
为什么被折叠?



