python学习之【第十篇】:Python中的内置函数

1.前言

内置函数,就是Python内部预先定义好的函数,可以直接使用,Python中内置函数有以下这么多个:

2.map()

  • 描述:
    map() 会根据提供的函数对指定序列做映射。第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。
  • 语法:
    map(function, iterable, ...)
  • 参数:
    • function -- 函数
    • iterable -- 一个或多个序列
  • 返回值:
    • Python 2.x 返回列表。
    • Python 3.x 返回迭代器。
  • 示例:
# 计算列表各个元素的平方
def square(x):
    return x ** 2

res = map(square,[1,2,3])
print(list(res))   # 输出[1, 4, 9]

# 也可以写作lambda函数
res1 = map(lambda x : x ** 2,[1,2,3])
print(list(res1))   # 输出[1, 4, 9]

3.filter()

  • 描述:
    filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。该接收两个参数,第一个为函数,第二个为序列,序列中的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
  • 语法:
    filter(function, iterable)
  • 参数:
    • function -- 函数
    • iterable -- 可迭代对象
  • 返回值:
    • Python 2.x 返回列表。
    • Python 3.x 返回迭代器。
  • 示例:
# 过滤出列表中的所有奇数
def is_odd(x):
    return x % 2 == 1

res = filter(is_odd,[1,2,3,4,5,6,7,8,9,10])

print(list(res))  # 输出[1, 3, 5, 7, 9]

4.reduce()

  • 描述:
    reduce() 函数会对参数序列中元素进行累积。函数将一个数据集合(列表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用function 函数运算,最后得到一个结果。
    在 Python3 中,reduce() 函数已经被从全局名字空间里移除了,它现在被放置在 fucntools 模块里,如果想要使用它,则需要通过引入 functools 模块来调用 reduce() 函数:from functools import reduce
  • 语法:
    reduce(function, iterable[, initializer])
  • 参数:
    • function -- 函数,有两个参数
    • iterable -- 可迭代对象
    • initializer -- 可选,初始参数
  • 注意:
    当使用初始参数时,先把初始参数传给function作为第一个参数,再从数据集合中取第一个数据作为第二个参数进行运算,然后把得到的结果再与第三个数据用function 函数运算,最后得到一个结果。
  • 返回值:
    返回函数计算结果。

  • 示例:
# 计算列表所有数据之和
from functools import reduce

def add(x, y):
    return x + y

res = reduce(add, [1, 2, 3, 4, 5, 6])
print(res)  # 输出1+2+3+4+5+6=21

# 在初始参数基础上计算列表所有数据之和
res1 = reduce(add, [1, 2, 3, 4, 5, 6],100)
print(res)  # 输出100+1+2+3+4+5+6=121

猜你喜欢

转载自www.cnblogs.com/wangjiachen666/p/9669972.html
今日推荐