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*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替换上述函数,当然我们也可以不只是针对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(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 functools
def sum_two_elements(a,b):
    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中一些功能强大的内置函数,通过这些函数可以极大的提升我们编码效率,并给出了相应的代码示例。

总结

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

(0)

相关推荐

  • Python的函数使用介绍

    目录 1 跳出循环-break 2 python函数 2.1 内置函数 2.2 自定义函数 2.3 main函数 1 跳出循环-break python提供了一种方便快捷的跳出循环的方法-break, 示例如下,计算未知数字个数的总和: if __name__ == "__main__": sum = 0 while True: num = str(input('输入的数字 (或者 "完成"): ')) if num == '完成': break #跳出循环 sum

  • Python列表常用函数使用详解

    目录 介绍  append() extend() insert() pop() remove() 介绍  append() 语法 list.append( element ) 参数 element:任何类型的元素 列表「末尾」添加元素 name_list = ['zhangsan', 'lisi', 'wangwu'] name_list.append('zhaoliu') print(name_list) 输出: ['zhangsan', 'lisi', 'wangwu', 'zhaoliu'

  • Python中10个常用的内置函数详解

    目录 complex() dir() divmod(a,b) enumerate(iterable,start=0) eval(expression,globals,locals) filter(function,iterable) isinstance(object,classinfo) map(function,iterable,-) input() zip(*iteables) 总结 complex() 返回一个形如 a+bj 的复数,传入参数分为三种情况: 参数为空时,返回0j 参数为字

  • Python中不可错过的五个超有用函数

    目录 1.引言 2. Lambda 函数 3. Map 函数 4. Filter 函数 5. Zip 函数 6. Reduce 函数 7. 总结 1.引言 在本文中,我们用代码详细说明了Python中超实用的5个函数的重要作用.这些函数虽然简单,但却是Python中功能最强大的函数.Python有许多库和内置函数,理解并正确使用这些函数有助于帮助我们进行高效地编程. 2. Lambda 函数 Lambda函数是Python中功能最强大的函数之一,它有时也被称之为匿名函数.它之所以被称为匿名函数,

  • python二分法查找函数底值

    假设连续函数f(x)在区间(a,b)上有一个底值m,且在该底值下的函数输出值为M,即f(m)=M,利用二分法查找该底值:(s为足够小的数) 令t=(a+b)/2,若|f(t)-M|<=s,则m=t,若|f(t)-M|>s,如果(f(t)-M)和(f(a)-M)同号,a=t,反之b=t,继续二分法t=(a+b)/2...直到|f(t)-M|<=s,则m=t. 例如:一项一年期投资,每个季度初投入10000元,期满时收入44163.225,求内部收益率(已设定为0.04). 收益函数为: 从

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

    目录 1.引言 2. Lambda 函数 3. Map 函数 4. Filter 函数 5. Zip 函数 6. Reduce 函数 总结 1.引言 在本文中,我们用代码详细说明了Python中超实用的5个函数的重要作用. 这些函数虽然简单,但却是Python中功能最强大的函数. Python有许多库和内置函数,理解并正确使用这些函数有助于帮助我们进行高效地编程. 2. Lambda 函数 Lambda函数是Python中功能最强大的函数之一,它有时也被称之为匿名函数. 它之所以被称为匿名函数,

  • 图文详解Python中最神秘的一个魔法函数

    目录 前言 1.有点价值的missing() 2.神出鬼没的missing() 3.被施魔法的missing() 4.小结 五.总结 前言 一个非常神秘的魔术方法. 这个方法非常不起眼,用途狭窄,我几乎从未注意过它,然而,当发现它可能是上述"定律"的唯一例外情况时,我认为值得再写一篇文章来详细审视一下它. 本文主要关注的问题有:(1) missing()到底是何方神圣?(2) missing()有什么特别之处?擅长"大变活人"魔术? (3) missing()是否真

  • python中string模块各属性以及函数的用法介绍

    任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产环境还是面试考验都要面对字符串的操作. python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串操作需求: • python的字符串属性函数 • python的string模块 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1.字符串属性函数  系统版本:CentOS release 6.2 (Final)2.6.32-220.

  • python中map、any、all函数用法分析

    本文实例讲述了python中map.any.all函数用法.分享给大家供大家参考.具体分析如下: 最近想学python,就一直比较关注python,昨天在python吧看到有个帖子提问怎么在python中怎么判断密码是否符合规范,回帖中有很多用循环的,除此外还有一个没有用循环,代码非常简练,下面是代码: def volid(pwd): a = any(map(str.isupper,pwd)) b = any(map(str.islower,pwd)) c = any(map(str.isdig

  • 浅谈Python中带_的变量或函数命名

    Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下,不同程序员编写的 Python 代码可以保持最大程度的相似风格.这样就易于阅读,易于在程序员之间交流. python中的标识符可以包含数字.字母和_,但必须以字母或者_开头,其中以_开头的命名一般具有特殊的意义. 前后均带有双下划线__的命名 一般用于特殊方法的命名,用来实现对象的一些行为或者功能,比如__new__()方法用来创建实例,__init__()方法用来初始化对象,

  • python中的字典操作及字典函数

    字典 dict_fruit = {'apple':'苹果','banana':'香蕉','cherry':'樱桃','avocado':'牛油果','watermelon':'西瓜'} 字典的操作 #字典的遍历方式 #默认遍历(遍历key) for value in dict_fruit: print(value) ''''' 遍历出的值: watermelon apple cherry avocado banana ''' #使用key遍历(与默认遍历一样) for key in dict_f

  • python中hasattr()、getattr()、setattr()函数的使用

     引言: 在阅读源码时,有很多简写的形式,其中一个比较常用的就是getattr()用来调用一个类中的变量或者方法,相关联的hasattr().getattr().setattr()函数的使用也一并学习了一下. 正文: 1. hasattr(object, name) 判断object对象中是否存在name属性,当然对于python的对象而言,属性包含变量和方法:有则返回True,没有则返回False:需要注意的是name参数是string类型,所以不管是要判断变量还是方法,其名称都以字符串形式传

  • 简单了解python中的f.b.u.r函数

    这篇文章主要介绍了简单了解python中的f.b.u.r函数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 f/format() 格式化操作,相当于format()函数 案例如下: name = 'wy' l = f'{name}' print(l) # 打印出的l是 wy b:bytes 二进制 拓展: encode和decode也可以在二进制和字符串之间转换 u/U 表示unicode字符串 不是仅仅是针对中文, 可以针对任何的字符串,代表

  • python中for用来遍历range函数的方法

    栗子:计算斐波那契数列(任一个数都是前两个数之和的数字序列) Python2.7实现代码如下: <strong><span style="font-size:14px;">fibs=[0,1] //初始化定义数列值 for i in range(20): //循环遍历20次 fibs.append(fibs[-2]+fibs[-1]) print fibs //打印出22位的斐波那契数列: </span></strong> 注:源码中的i

  • 对python中两种列表元素去重函数性能的比较方法

    测试函数: 第一种:list的set函数 第二种:{}.fromkeys().keys() 测试代码: #!/usr/bin/python #-*- coding:utf-8 -*- import time import random l1 = [] leng = 10L for i in range(0,leng): temp = random.randint(1,10) l1.append(temp) print '测试列表长度为:',leng #first set last = time.

随机推荐