Python常用函数
Python中有很多内置的函数,这里会介绍一些比较常用的函数。
range函数
range()函数可以生成一个整数序列,常用于循环中,语法如下:
range(start, stop[, step])
- start:计数从start开始,一般为0,默认为0。
- stop:计数到stop结束,但不包括stop。
- step:步长,默认为1。
举个例子:
for i in range(5):
print(i)
上面的代码会打印出0到4,因为range(5)
生成的是0-4的整数序列。
也可以指定起始值、结束值和步长:
for i in range(3,12,2):
print(i)
上述代码会打印出3、5、7、9、11。
map函数
map()
函数可以将一个函数作用于一个序列的每个元素上,返回一个新的序列,语法如下:
map(function, iterable, ...)
- function:函数。
- iterable:一个或多个序列。
举个例子:
def square(x):
return x * x
result = map(square, [1,2,3,4])
print(list(result))
输出结果为:
[1, 4, 9, 16]
上述代码将square()
函数作用于[1,2,3,4]中的每个元素上,将结果存入一个新的序列中返回。
filter函数
filter()
函数可以过滤一个序列中不符合要求的元素,返回一个新的序列,只包含符合要求的元素,语法如下:
filter(function, iterable)
- function:函数。
- iterable:一个序列。
举个例子:
def is_positive(x):
return x > 0
result = filter(is_positive, [-1,-2,3,4,-5])
print(list(result))
输出结果为:
[3, 4]
上述代码过滤掉了序列中不大于0的元素,只返回大于0的元素。
sorted函数
sorted()
函数可以对一个序列进行排序,返回一个新的排序好的序列,语法如下:
sorted(iterable, cmp=None, key=None, reverse=False)
- iterable:一个序列。
- cmp:比较函数。
- key:排序关键字。
- reverse:是否倒序。
举个例子:
result = sorted([3,-2,1,4,-5])
print(result)
输出结果为:
[-5, -2, 1, 3, 4]
上述代码将[3,-2,1,4,-5]排序后输出。
zip函数
zip()
函数可以将多个序列中的对应元素打包成一个元组,返回一个包含元组的列表,语法如下:
zip(iterable1, iterable2, ...)
- iterable1, iterable2, …:多个序列。
举个例子:
a = [1,2,3]
b = ['a','b','c']
result = zip(a,b)
print(list(result))
输出结果为:
[(1, 'a'), (2, 'b'), (3, 'c')]
上述代码将a和b两个序列对应元素打包成元组,返回一个包含元组的列表。
enumerate函数
enumerate()
函数可以将一个序列中的每个元素和它的下标组成一个可遍历的数据类型,返回一个枚举对象,语法如下:
enumerate(iterable, start=0)
- iterable:一个序列。
- start:下标起始值。
举个例子:
a = ['a','b','c']
result = enumerate(a)
print(list(result))
输出结果为:
[(0, 'a'), (1, 'b'), (2, 'c')]
上述代码将a序列中的元素和它的下标组成元组,返回一个枚举对象。
reduce函数
reduce()
函数可以对一个序列进行累积操作,返回一个单值,语法如下:
reduce(function, iterable[, initial])
- function:函数。
- iterable:一个序列。
- initial:可选参数,初始值。
举个例子:
from functools import reduce
def add(x,y):
return x + y
result = reduce(add, [1,2,3,4], 0)
print(result)
输出结果为:
10
上述代码将[1,2,3,4]进行累积加操作,初始值为0,返回结果为10。