目录
Map函数
参数解释:第一个参数就是函数表达式,第二个参数就是需要处理的可迭代对象
目的:map主要就是用于将可迭代对象进行批量处理,以避免出现代码过多的现象
返回值:map的返回值是一个生成器对象,生成器就是一个特殊的迭代器,只不过一般来说生成器是编程者自己生成的,迭代器是python生成的(后面的filter就会生成一个迭代器)
例子:
a = (1, 2, 3, 4, 5)
# 如果不使用list,map生成的是一个生成器对象,是不会被输出来的
print(list(map(float, a)))
# 大多数情况下使用map都会要用到lambda即自定义函数
print(list(map(lambda x:x ** 2, a)))
output:
[1.0, 2.0, 3.0, 4.0, 5.0]
[1, 4, 9, 16, 25]
Filter函数
参数解释:第一个参数是函数表达式,只不过这个函数表达式是返回bool值的,第二个参数依然是可迭代对象
目的:filter函数主要是将可迭代对象内的数据进行筛选
返回值:返回是一个迭代器,迭代器是只能迭代一次的,迭代第二次的时候就会发现其已经被消除了。
例子:
numbers = [1, 2, 3, 4, 5]
print(list(filter(lambda x: x % 2 == 0, numbers)))
output:
[2, 4]
Reduce函数
参数解释:第一个参数为函数表达式,这个函数表达式一定要包含两个返回参数,计算后的返回值会自动返回给第一个返回参数,第二个返回参数自动从迭代对象中获取更新。第二个参数是可迭代对象
目的:该函数就是要进行迭代计算以减少代码
返回值:它的返回值不是生成器对象或者迭代器对象了,而是值
注意:在使用reduce函数之前要从functools库中引入这个函数
from functools import reduce
numbers = [1, 2, 3, 4, 5]
product = reduce(lambda x, y: x * y, numbers)
print(product)
output:
120
join方法
参数解释:可迭代对象.join(" ")字符串内的参数就是分离可迭代对象的分隔符
目的:join一般用于列表变成字符串的操作
提示:如果可迭代对象是列表或者元组等,那么生成的就是字符串而且join()括号内的字符串就是分隔符,如果可迭代对象是字符串,那么生成的新的字符串就是以join()括号内的字符串为分隔符,分隔原字符串中的每一个字母或者数字的。
lv1 = ["lv", "yi", "hang"]
print("".join(lv1))
lv2 = "wo ai ni"
print(":".join(lv2))
lv3 = ("lv", "yi", "hang")
print(" ".join(lv3))
output:
lvyihang
w:o: :a:i: :n:i
lv yi hang
ord和chr函数
简单理解:ord是字母转数字的函数,而chr是数字转字母的函数
例子:
print(ord("a"))
print(chr(90))
output:
97
Z
replace函数
参数解释:第一个参数是需要替换的字符串部分或者列表元素,第二个参数是需要替换成为的字符串或者列表元素
a = "abcd"
# 可以针对字符串和列表
print(a.replace("d", ""))
output:
abc