一 内置函数
- 导入:import builtins
1.1 查看内置函数
- 大写字母开头的一般是内置变量
- 小写的一般是内置函数
import builtins
print(dir(builtins))
1.2 abs() 求绝对值
- print(abs(-10))
1.3 sum()求和
-
不能直接用纯数字,因为不是可迭代对象
-
运算时只要一个是浮点数,结果就是浮点数
print(sum([1,2,3,4,5,6,7]))
1.4 min()和max()
- 可以传递key,这样会先机型key函数的计算
print(min(1,2,3,4,5,6,7))
print(max([1,2,3,4,5,6,7]))
print(min([-3,-5,7,2],key=abs)) # 先求绝对值
1.5 zip() 打包
-
将可迭代对象作为参数,对应的元素打包成一个个元组
-
如果元素个数不一致,就按照长度最短的返回
1.5.1 遍历包数据
- list1中的6,7就不会被打包进入
- 但是如果不转换成list,一次遍历zip数据后就会被消耗完毕,因为zip是一个迭代器
- 迭代器(iterator)是一次性使用的,一旦被遍历过,那么被遍历的地方就空了。
list1 = [1,2,3,4,5,6,7]
list2 = ['1','2','3','4','5']
zip1 = list(zip(list1,list2))
for i in zip1:print(i)
print(zip1)
1.6 map映射函数
-
参数: (自定义函数,可迭代对象)
-
对象中的每一个元素都会执行这个函数
list2 = ['1','2','3','4','5']
def func(x):return x + '5'
mapA = map(func,list2)
for i in mapA:print(i)
print(list(mapA))
1.7 reduce() 累积
-
先把对象中两个元素去除,计算出一个值,然后和第三个值计算,依次到最后
-
reduce(functiom,sequence) 函数: 必须要有两个参数的函数 sequence: 序列(可迭代对象)
from functools import reduce
list1 = [1,2,3,4,5,6,7]
def add(x,y):return x + y
res = reduce(add,list1)
print(res)