day02

本文深入解析Python函数,涵盖普通参数、缺省参数、不同传参方式、匿名函数、变量作用域及高阶函数等内容,助您掌握函数编程核心。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天我要写的知识点是函数

我不想说函数的那些什么概念,只写几句代码来描述再简单不过的函数:

def fun(a,b,c):
	 pass

这就是一个最最简单是函数的样子,fun是函数名,abc分别是它的三个参数,也是函数内部的三个变量,pass语句是填充语句,用来替代函数的执行语句。

先说函数的参数
函数的参数分为普通参数和缺省参数
普通 参数就行上面的那个fun函数一样,
缺省参数就是给参数定一个默认值,如:

def fun1(a=1,b=2,c=3):
	pass

func1函数里面的abc参数都给他赋值了,但是需要注意,如果我们在使用函数时,给abc传递了新的参数进去,那么缺省参数就不会起作用,函数是使用我们传递进去的参数,如果我们在使用函数时没有传递参数进去,那么就可以使用缺省参数。可以这么理解,后面传递的参数的优先级大于缺省参数。

函数传参有几种形式,比较常用的有三种:
第一种:
位置传参,顾名思义,就是按照位置的先后顺序传递,如:

	def fun(a,b,c):
		pass
	func(1,2.3)

这里把1,2,3以此传递给a,b,c,顺序很重要,不同的顺序,传递进去的结构就不一样
第二种:
关键字传参,就是我们主动要求我要把哪个值传递给制定的参数变量,如:

def fun(a,b,c):
	pass
fun(b=1,c=2,a=3)

这种方式就不需要顾及顺序了,反正都是指定的,顺序什么的根本没有影响
第三种:
这种就厉害了,可以说是万精油,叫单星号元组传参和双星号字典传参,如:

def fun(*args,**kwargs):
	pass
func(传递任意个数和形式的参数)

第三种要注意,总有一天会有用的

函数的参数还可以传入一个函数,相当于把一个函数以参数的形式传递给另一个函数,这样在另一个函数中就可以使用传入的函数了。

ps:函数内除了pass这个比较特殊的语句,还有个有用的单词,叫return,return这个单词放到函数内,作用有很多,第一,结束函数,让程序返回到调用函数的地方,第二,返回需要的值,调用函数就得到返回值。

匿名函数:这种函数顾名思义,就是没有函数名,它的语法为:

lambda [形参]:表达式

这种匿名函数只有这么一句,形参可以有多个,表达式只能有一个

函数中变量的作用域
前面多多少少提到一些,简单总结就是:在函数内部的变量只能在函数内部使用,当然也包含参数,函数外部无法使用函数内部的变量,函数外部的变量可以被函数内部使用。不严谨的说:函数外部可以说是全局变量,函数内部可以说是局部变量。局部变量只能在局部使用,全部变量可以在任何地方使用。
python中有两个声明变量的方法:globa 变量1,变量2… ,nonlocal 变量1,变量2…
globa声明的变量为全局变量,nonlocal声明的变量为局部变量

高阶函数

1.把一个函数以参数的形式传递给另一个函数
2.一个函数的返回值还是一个函数
只要哪个函数满足以上两点中的任意一点,这个函数就是高阶函数,高阶函数的使用还是很多的,后面在很多地方用到。

写在最后:函数的名字也是有规则的,命名规则大致和变量的命名规则差不多,不能以数字开头,可以由字母,下划线,数字组成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值