Python教程

python的函数和方法(中)

本文主要是介绍python的函数和方法(中),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

匿名函数

  1. 什么是匿名函数
    lambda是个匿名函数,也是一个表达式,是函数的最小作战单元
    匿名函数顾名思义,就是“无名”函数
    匿名函数适用于简单的业务逻辑
    一行一个函数
    通俗的说逻辑不复杂,不需要大规模批量调用的功能可使用匿名函数构建,匿名函数的书写特性决定其简易性
    #lambda简约而不简单
    注意lambda是 python的一个关键字,用于声明一个匿名函数
    **匿名函数的难点不在于其构建本身,在于其组合使用的难度!

  2. 如何声明/调用一个匿名函数(lambda)

#传统函数:
def add(num1):
	return num1 * 2
调用:add(2)
输出:4

def add(num1,num2):
	return num1 + num2
调用:add(1,2)
输出:3

#匿名函数:
result = lambda x: x*2
调用:result(2)
输出:4 

result = lambda x,y: x+y
调用:result(x=1,y=2)
输出:3
  1. 匿名函数的几种使用方式
#1、匿名函数组合三目运算
传统函数
def compare(x,y):
	if x > y:
		return x
	else:
		return y
调用:compare(2,1)
输出:2

匿名函数
compare = lambda x,y: x if x > y else y
调用:compare(2,1)
输出:2
#2、把lambda作为一个方法传入传统函数
schools = ["Python基础",
		   "Python爬虫",
		   "Java编程",
		   "Java Web",
		   "Python数据分析"
]

def keyword_serch(keys,func):
	search_result= []
	for result in keys:
		if func(result):
			search_result.append(result)
	return search_result

condition = lambda x: True if "Python" in x else False

调用:keyword_serch(schools,condition)
输出: ["Python基础","Python爬虫","Python数据分析"]
#3、如何给def函数中的lambda传参数?
def main():
	return lambda x: True if x == 10 else False
			(如果x等于10返回真,否则为假)
调用:main()(10) 
	执行main函数,但是main不需要传参;
	第二个括弧则是为lambda传送的x的参数
输出:True
#4、把lambda作为一个方法传入传统函数
def income(basic,transport,phone):
	return lambda x: x+basic+transport+phone
调用:total = income(1000,2000,3000)
	 total(4000)
输出:10000

schools = ["Python基础",
		   "Python爬虫",
		   "Java编程",
		   "Java Web",
		   "Python数据分析"
]
def keyword_search(keys,func):
	search_result= []
	for key in keys:
		if func(key):
			search_result.append(key)
	return search_result

def search_condition(c):
	return lambda x: True if c in x else False

python = search_condition("Python")
调用:keyword_search(schools,python)
输出:["Python基础","Python爬虫","Python数据分析"]
  1. 匿名函数的组合使用
    在这里插入图片描述
    map函数
    在这里插入图片描述

在这里插入图片描述
filter函数
在这里插入图片描述

在这里插入图片描述
reduce函数
在这里插入图片描述
在这里插入图片描述
sorted函数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这篇关于python的函数和方法(中)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!