千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:南昌千锋IT培训  >  技术干货  >  sum函数python用法

sum函数python用法

来源:千锋教育
发布人:xqq
时间: 2023-11-17 08:54:47

sum函数是Python内置的一个函数,用于对可迭代对象中的所有元素进行求和操作。它可以接受一个可迭代对象作为参数,返回一个数字类型的结果。sum函数的语法如下:

sum(iterable[, start])

其中,iterable表示可迭代对象,start表示可选参数,表示起始值,默认为0。

使用sum函数的时候,需要注意以下几点:

1. 可迭代对象中的元素必须是数字类型,否则会抛出TypeError异常。

2. 如果可迭代对象为空,sum函数返回起始值(如果有),否则会抛出TypeError异常。

3. 如果可迭代对象中存在NaN(Not a Number)或者Infinity(无穷大)等特殊值,sum函数会返回NaN或者Infinity。

下面我们来看一些具体的例子。

## 1. 对列表进行求和

我们可以使用sum函数对列表中的元素进行求和,如下所示:

`python

a = [1, 2, 3, 4, 5]

print(sum(a)) # 15


## 2. 对元组进行求和
除了列表,我们还可以对元组进行求和,如下所示:
`python
a = (1, 2, 3, 4, 5)
print(sum(a))  # 15

## 3. 对集合进行求和

对于集合,我们也可以使用sum函数进行求和,如下所示:

`python

a = {1, 2, 3, 4, 5}

print(sum(a)) # 15


## 4. 对字典中的值进行求和
如果我们想对字典中的值进行求和,可以使用字典的values方法和sum函数,如下所示:
`python
a = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}
print(sum(a.values()))  # 15

## 5. 指定起始值

如果我们想从一个非零的起始值开始求和,可以使用sum函数的第二个参数指定起始值,如下所示:

`python

a = [1, 2, 3, 4, 5]

print(sum(a, 10)) # 25


## 6. 使用生成器表达式
除了常见的可迭代对象,我们还可以使用生成器表达式作为sum函数的参数,如下所示:
`python
a = (x for x in range(1, 6))
print(sum(a))  # 15

## 7. 处理特殊值

当可迭代对象中存在NaN或者Infinity等特殊值的时候,sum函数会返回NaN或者Infinity,如下所示:

`python

a = [1, 2, float('nan'), 4, 5]

print(sum(a)) # nan

a = [1, 2, float('inf'), 4, 5]

print(sum(a)) # inf

在处理这种情况的时候,我们需要注意。

## 8. 扩展问答

### 1. sum函数只能对数字类型进行求和吗?

是的,sum函数只能对数字类型进行求和。如果可迭代对象中存在非数字类型的元素,会抛出TypeError异常。

### 2. sum函数的第二个参数有什么作用?

sum函数的第二个参数可以指定起始值,默认为0。如果我们想从一个非零的起始值开始求和,可以使用第二个参数。

### 3. sum函数对于特殊值的处理方式是什么?

当可迭代对象中存在NaN或者Infinity等特殊值的时候,sum函数会返回NaN或者Infinity。

### 4. sum函数能够处理的可迭代对象有哪些?

sum函数能够处理的可迭代对象包括列表、元组、集合、字典的values方法返回的可迭代对象以及生成器表达式等。

### 5. sum函数的返回值是什么类型?

sum函数的返回值是数字类型。如果可迭代对象为空,返回起始值(如果有),否则会抛出TypeError异常。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

ora-00936缺失表达式怎么解决

2023-11-17

为什么我的环境变量path只能设置一个目录

2023-11-17

shell删除文件夹下所有文件命令是什么

2023-11-17

最新文章NEW

mysql数据库长度是字节还是字符串

2023-11-17

linux误删根目录怎么恢复

2023-11-17

sql中over函数是做什么用的

2023-11-17

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>