Python内置函数的使用:range、len、sorted、map和filter等
Python是一种多范式编程语言,支持面向对象、过程式和函数式编程范式。函数是Python语言中的一个核心概念,函数在Python中是一种对象。Python标准库中提供了众多内置函数,这些内置函数广泛应用于日常的编程任务中。
本文将介绍Python中内置函数range、len、sorted、map和filter等函数的使用,并提供一些具体的示例。这些函数被广泛应用于Python编程中,熟练掌握这些函数的使用方法对于Python程序员来说是非常重要的。
1. range函数
range函数被用于生成一个整数序列,通常被用来遍历或循环一段代码。range函数有三个参数,分别为start、stop和step。其中start表示序列的起始值(默认为0),stop表示序列的结束值,step表示序列中连续元素之间的差值(默认为1)。
示例代码:
# 遍历列表中的元素
lst = ['a', 'b', 'c']
for i in range(len(lst)):
print(lst[i])
# 遍历一个范围内的数
for i in range(1, 10):
print(i)
# 使用步长递增的方式来遍历范围
for i in range(1, 10, 2):
print(i)
在这个示例代码中,range函数用来遍历一个列表、一个范围内的数以及一个范围内的奇数。
2. len函数
len函数用于获取一个容器类型对象的长度或大小(如字符串、列表、元组、字典等)。len函数的返回值是一个整数,表示对象中元素的数量。
示例代码:
# 计算字符串的长度 s = 'hello' print(len(s)) # 计算列表的长度 lst = ['a', 'b', 'c'] print(len(lst)) # 计算元组的长度 t = (1, 2, 3) print(len(t))
在这个示例代码中,len函数用于计算一个字符串、一个列表和一个元组的长度。
3. sorted函数
sorted函数用于排序一个可迭代对象(如列表、元组、字典等),并返回排好序的结果。sorted函数可以接受一个可选的关键字参数key,它用来指定一个函数,用于从每个元素中提取一个关键字(排序的依据)。
示例代码:
# 对一个列表进行排序
lst = [3, 1, 4, 1, 5, 9, 2, 6]
print(sorted(lst))
# 对一个元组进行排序
t = (3, 1, 4, 1, 5, 9, 2, 6)
print(sorted(t))
# 对一个字典进行排序
d = {'a': 3, 'b': 1, 'c': 4, 'd': 1}
print(sorted(d.items(), key=lambda x:x[1]))
在这个示例代码中,sorted函数用来排序一个列表、一个元组和一个字典,并使用一个lambda函数作为排序的依据。
4. map函数
map函数用于对可迭代对象中的每个元素应用同一个函数,然后返回一个新的可迭代对象,其中包含函数的处理结果。map函数的第一个参数是函数对象,其余参数是可迭代对象。如果传入的可迭代对象长度不相等,将以最短的对象长度为标准。
示例代码:
# 对一个列表中的各个元素加上1
lst = [1, 2, 3, 4, 5]
print(list(map(lambda x: x+1, lst)))
# 将一个字符串转换为小写字母
s = 'HELLO'
print(''.join(map(lambda x: x.lower(), s))))
# 将两个列表中相同位置的元素相加
lst1 = [1, 2, 3]
lst2 = [4, 5, 6]
print(list(map(lambda x, y: x+y, lst1, lst2))))
在这个示例代码中,map函数用来对一个列表中的每个元素加上1、将一个字符串转换为小写字母,以及将两个列表中相同位置的元素相加。
5. filter函数
filter函数用于筛选可迭代对象中符合条件的元素,并返回一个新的可迭代对象,其中包含符合条件的元素。filter函数的第一个参数是函数对象,其余参数是可迭代对象。
示例代码:
# 从一个列表中筛选出偶数
lst = [1, 2, 3, 4, 5, 6]
print(list(filter(lambda x: x%2==0, lst)))
# 从一个列表中选出字符串类型的元素
lst2 = ['a', 1, 'b', 2, 'c', 3]
print(list(filter(lambda x: type(x) == str, lst2))))
# 从一个字典中筛选出值大于2的键
d = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
print(list(filter(lambda x: d[x] > 2, d))))
在这个示例代码中,filter函数用来从一个列表中筛选出偶数、从一个列表中选出字符串类型的元素,以及从一个字典中筛选出值大于2的键。
总结
本文介绍了Python标准库中的range、len、sorted、map和filter等内置函数的使用方法,并给出了一些具体的示例。这些内置函数是Python程序员日常编程中使用最频繁的函数之一,熟练掌握这些函数的使用方法对于编写高质量的Python代码非常重要。
