开发者

Python中的五个神仙级函数一起来看看

开发者 https://www.devze.com 2022-12-08 09:58 出处:网络 作者: 赵卓不凡
目录1.引言2. Lambda 函数3. Map 函数4. Filter 函数5. Zip 函数6. Reduce 函数总结1.引言
目录
  • 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*b
print(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+b
output = list(map(add_list,[2,6,3],[3,4,5]))
print(output)

注意点如下:

  • Map函数的语法为: map(function,iterables)
  • 上述例子中,我们自定义的函数 add_list 的功能是对两个变量进行求和
  • 上述例子运行的结果为另一个list [5, 10, 8]
  • 如果我们想要探索更多map函数的功能,我们可以使用lambda替换上述函数,当然我www.cppcns.com们也可以不只是针对list操作,也可以对tuple和set进行操作。

4. Filter 函数

Filter是Python中的另一个内置函数,当需要区分其他类型的数据时,这个函数非常有用。Filter函数经常用于根据特定过滤条件来提取数据。

def is_positive(a):
	return a>0
output = list(filter(is_positive,[1,-2,3,-4,5,6]))
print(outpuhttp://www.cppcns.comt)

注意点如下:

  • Filter函数的语法为: filter(function,iterable)
  • ​​​​​​​上述自定义的函数必须要求返回bool型的值
  • Filter函数只返回满足自定义函数返回值为真ZQsqJF的那些元素
  • 上述例子的返回值为 [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 functools
def sum_two_elements(a,b):
 http://www.cppcns.com   return a+b

numbers = [6,2,1,3,4]
result = functools.reduce(sum_two_elements, numbers)
print(result)

注意点如下:

Reduce 函数的语法为: functools.reduce(function, iterable)Reduce 函数不是Python内置函数,使用该函数时需要导入functools 模块上述代码的输出为16,实现对list所有元素求和的功能 7. 总结

本文重点介绍了Python中一些功能强大的内置函数,通过这些函数可以极大的提升我们编码效率,ZQsqJF并给出了相应的代码示例。

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容! 

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号