Python中的五个神仙级函数一起来看看
目录
- 1.引言
- 2. Lambda 函数
- 3. Map 函数
- 4. Filter 函数
- 5. Zip 函数
- 6. Reduce 函数
- 总结
1.引言 在本文中,我们用代码详细说明了Python中超实用的5个函数的重要作用。
这些函数虽然简单,但却是Python中功能最强大的函数。
Python有许多库和内置函数,理解并正确使用这些函数有助于帮助我们进行高效地编程。
2. Lambda 函数 Lambda函数是Python中功能最强大的函数之一,它有时也被称之为匿名函数.
它之所以被称为匿名函数,是因为我们可以实例化和声明一个没有名字的函数。如果要执行单个操作,使用lambda函数替代传统函数非常有用。Lambda与普通函数类似,只是它只能返回一个表达式。
接下来我们使用Lambda函数来求表达式 (a+b)^2的值代码如下:
answer = lambda a, b: a**2 + b**2 + 2*a*bprint(answer(3, 6))
注意点如下:
- Lambda函数的语法为:
lambda arguments: expression
- Lambda函数不需要函数名字,返回使用Lambda关键字的语句。
- 请注意,上述Lambda函数使用变量answer来调用。
- 我们也可以在其他函数中使用Lambda函数。
- Lambda与普通函数类似,只是它只能返回一个表达式。
3. Map 函数 Map是程序员用来简化程序的Python内置函数,此函数可以在不使用任何循环的情况下对所有指定的元素进行迭代。
接下来我们使用Map函数来对两个list相应元素求和并生成新的list
def add_list(a,b): return a+boutput = list(map(add_list,[2,6,3],[3,4,5]))print(output)
注意点如下:
- Map函数的语法为:
map(function,iterables)
- 上述例子中,我们自定义的函数
add_list
的功能是对两个变量进行求和 - 上述例子运行的结果为另一个list [5, 10, 8]
- 如果我们想要探索更多map函数的功能,我们可以使用lambda替换上述函数,当然我们也可以不只是针对list操作,也可以对tuple和set进行操作。
4. Filter 函数 Filter是Python中的另一个内置函数,当需要区分其他类型的数据时,这个函数非常有用。Filter函数经常用于根据特定过滤条件来提取数据。
def is_positive(a): return a>0output = list(filter(is_positive,[1,-2,3,-4,5,6]))print(output)
注意点如下:
- Filter函数的语法为:
filter(function,iterable)
- 上述自定义的函数必须要求返回bool型的值
- Filter函数只返回满足自定义函数返回值为真的那些元素
- 上述例子的返回值为 [1,3,5,6]
5. Zip 函数 zip 是Python中另一个内置函数,主要用于从数据库的不同列中提取数据并将其更组合为元组。
user_id = ["12121","56161","33287","23244"]user_name = ["Mick","John","Tessa","Nick"]user_info = list(zip(user_name,user_id))print(user_info)
注意点如下:
- Zip函数的语法为:
zip(*iterables)
- 该函数主要作用为将两个给定的列表组合成一个元组。
- 上述例子的输出为
[(‘Mick’, ‘12121’), (‘John’, ‘56161’), (‘Tessa’, ‘33287’), (‘Nick’, ‘23244’)]
6. Reduce 函数 当需要对给定列表中的所有元素使用相同的操作时使用Reduce函数。
代码如下:
import functoolsdef sum_two_elements(a,b):return a+bnumbers = [6,2,1,3,4]result = functools.reduce(sum_two_elements, numbers)print(result)
【Python中的五个神仙级函数一起来看看】注意点如下:
Reduce 函数的语法为:
functools.reduce(function, iterable)
Reduce 函数不是Python内置函数,使用该函数时需要导入functools 模块上述代码的输出为16,实现对list所有元素求和的功能 7. 总结本文重点介绍了Python中一些功能强大的内置函数,通过这些函数可以极大的提升我们编码效率,并给出了相应的代码示例。
总结 本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!
推荐阅读
- ASP.NET|ASP.NET Core中的静态文件介绍
- 如何使用五行Python代码轻松实现批量抠图
- Python+Matplotlib绘制3D图像的示例详解
- C语言数据的存储超详细讲解下篇浮点型在内存中的存取
- 使用python|使用python flask框架开发图片上传接口的案例详解
- C++如何使用STL中的array::size()(用法示例)
- 如何理解Java中的final、finally、finalize(用法和区别)
- Golang中的方法用法和注意事项介绍
- Linux中的chroot命令用法和示例
- 通道注意力机制|通道注意力机制 cnn keras_【CV中的Attention机制】简单而有效的CBAM模块