Python内置函数是Python语言的一个基础组成部分,它可以帮助程序员简化代码编写流程。在本文中,我们将会讲解Python内置函数中的 range()、zip()、sorted()、map()、reduce() 和 filter() 函数,以及如何使用它们。
1. range()
range() 函数是Python内置的生成连续整数的函数。range(start, stop, step) 可以生成从 start 到 stop-1 的整数序列,步长为 step。如果只提供一个参数,则默认从0开始生成整数序列,步长为1。
例如,我们可以使用 range() 函数生成 0~4 的整数序列:
for i in range(5):
print(i)
输出结果为:
0
1
2
3
4
我们也可以使用 range() 生成从 1 到 10 的所有偶数:
for i in range(2, 11, 2):
print(i)
输出结果为:
2
4
6
8
10
2. zip()
zip() 函数是Python内置函数之一,它将多个可迭代对象中相同索引位置的元素打包成元组,最后返回一个由这些元组组成的迭代器。如果提供的多个可迭代对象长度不同,则以最短的对象为准。
例如,我们可以使用 zip() 函数打包两个列表:
a = [1, 2, 3]
b = ['a', 'b', 'c']
c = zip(a, b)
for i in c:
print(i)
输出结果为:
(1, 'a')
(2, 'b')
(3, 'c')
当输入多个可迭代对象时,zip()函数将以最短的对象作为循环的次数,例如:
a = [1, 2, 3]
b = ['a', 'b']
c = zip(a, b)
for i in c:
print(i)
输出结果为:
(1, 'a')
(2, 'b')
3. sorted()
sorted() 函数可以对列表、元组、字典等可迭代对象进行排序。其输入参数为一个可迭代对象,返回一个新的已排序的列表。sorted() 函数的 sorted(iterable, key=None, reverse=False) 参数包含三个,分别为可迭代对象、排序依据的关键字和是否进行降序排列。
例如,我们可以使用 sorted() 函数对一个列表进行排序:
a = [5, 1, 3, 2, 4]
b = sorted(a)
print(b)
输出结果为:
[1, 2, 3, 4, 5]
我们也可以将字符串按照字母表顺序排序:
a = 'hello world'
b = sorted(a)
print(b)
输出结果为:
[' ', 'd', 'e', 'h', 'l', 'l', 'o', 'o', 'r', 'w']
4. map()
map() 函数是Python内置的高阶函数,它将一个函数应用于一个或多个迭代器,返回一个结果迭代器,常用于对列表、元组等数据类型进行批量操作。
例如,我们可以使用 map() 函数将列表的每个元素加一:
a = [1, 2, 3]
b = map(lambda x:x+1, a)
print(list(b))
输出结果为:
[2, 3, 4]
我们也可以使用 map() 函数将两个列表对应的元素相乘:
a = [1, 2, 3]
b = [4, 5, 6]
c = map(lambda x, y: x*y, a, b)
print(list(c))
输出结果为:
[4, 10, 18]
5. reduce()
reduce() 函数是Python内置的高阶函数之一,它将一个可迭代对象中的元素通过一个函数进行缩减到单个值。reduce() 函数的输入参数有一个函数和一个可迭代对象,函数用于对两个元素的缩减操作。
例如,我们可以使用 reduce() 函数计算一个列表的累加和:
from functools import reduce
a = [1, 2, 3, 4, 5]
b = reduce(lambda x, y: x+y, a)
print(b)
输出结果为:
15
我们也可以使用 reduce() 函数计算一个列表中的乘积:
from functools import reduce
a = [1, 2, 3, 4, 5]
b = reduce(lambda x, y: x*y, a)
print(b)
输出结果为:
120
6. filter()
filter() 函数是Python内置的高阶函数之一,它对一个可迭代对象进行筛选,返回一个由所有由函数返回 True 的元素组成的迭代器。filter() 函数的输入参数是一个函数和一个可迭代对象,函数用于对元素进行筛选。
例如,我们可以使用 filter() 函数筛选出一个列表中的所有偶数:
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
b = filter(lambda x: x%2==0, a)
print(list(b))
输出结果为:
[2, 4, 6, 8, 10]
我们也可以使用 filter() 函数筛选出一个列表中所有不为空的元素:
a = ['', 'a', '', 'b', 'c', '']
b = filter(lambda x: x!='', a)
print(list(b))
输出结果为:
['a', 'b', 'c']
以上就是 Python 内置函数中 range()、zip()、sorted()、map()、reduce() 和 filter() 函数的完整攻略,通过这些函数的使用可以帮助我们更高效地编写Python代码。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 内置函数-range()+zip()+sorted()+map()+reduce()+filter() - Python技术站