做网站的开发心得,物联网技术应用,在线制作图片免费的软件,百度网站收入函数与匿名函数一、函数 在计算机科学中#xff0c;函数是程序负责完成某项特定任务的代码单元#xff0c;具有一定的独立性。 1.函数的定义 在Python中#xff0c;函数在定义时需要满足这样的规则#xff1a; 使用关键字def引导#xff1b;def后面是函数的名称#xff0… 函数与匿名函数一、函数 在计算机科学中函数是程序负责完成某项特定任务的代码单元具有一定的独立性。 1.函数的定义 在Python中函数在定义时需要满足这样的规则 使用关键字def引导def后面是函数的名称括号中是函数的参数不同的参数用逗号“”隔开参数可以为空但括号不能省略函数代码块要缩进用一对包含的字符串作为函数的说明用来解释函数的用途可省略使用关键字return返回一个特定的值如果省略返回None。例如我们定义一个简单的加法函数它接受两个变量x和y计算x与y的的和啊并返回a的值 def add(x,y):Add two numbersa x yreturn a 2.函数的调用 定义好函数后函数并不会自动执行。我们需要调用它才能执行相关的内容。 函数的调用使用函数名加括号的形式参数放在括号中参数分为形参和实参定义函数时是形参调用函数时是实参。 def add(x,y): #形参Add two numbersa x yreturn a
add(1,2) #调用方法实参 当传入的参数数目与实际不符时会报错。 当传入的参数不支持加法时也会报错。 传入参数时Python提供了两种模式第一种是按照参数的顺序传入另一种是使用键-值模式按照参数名称传入参数 def add(x,y):Add two numbersa x yreturn a
add(x1,y2) #键-值模式可以调换顺序 也可以两种模式一起使用前提是键-值模式一定在参数模式右边否则会报错 def add(x,y):Add two numbersa x yreturn a
add(1,y2) #add(x1,2)会报错 3.带默认参数的函数 我们可以给函数参数设定默认值默认参数需要在定义设定定义时所有带默认值的参数必须放在不带默认值的参数后面 def handle(x,typeNone):print(x,type)
handle(hello) #结果为helloNone
handle(hello,mysql) #可覆盖结果为hellomysql 4.参数组 参数组在定义函数时使用一个星号 * 或者两个星号 ** 来实现。 使用一个星号的参数使用如下 def test(x,*args): print(x) #结果为1print(args) #结果为(2, 3, 4, 5, 6)print(args[0]) #结果为2
test(1,2,3,4,5,6) 参数中的*args是一个可变数目的参数我们可以把它看成一个元组。 调用test(1,2,3,4,5,6)时第一个参数1传给了x剩余的参数组成一个元组传给了args因此args的值为(2,3,4,5,6)。 使用两个星号的参数使用如下 def test(x,**kwargs):print(x) #结果为1print(kwargs) #结果为{y: 2, z: 3, w: 4}
test(1,y2,z3,w4) **kwargs表示这是一个不定名字的参数它本质上是一个字典。 调用test(1,y2,z3,w4)时第一个参数1传给了x剩余的参数组成一个字典传给了kwargskwargs为字典{y: 2, z: 3, w: 4}。 这两种模式也可以一起使用前提是一个星号参数在两个星号参数左边 def test(x,*args,**kwargs):print(x) #结果为1print(args) #结果为(2, 3, 4)print(kwargs) #结果为{y: 2, z: 3}
test(1,2,3,4,y2,z3) 二、匿名函数 当我们在传入函数时有些时候不需要过多的定义函数直接传入匿名函数更方便。 1.匿名函数格式 匿名函数格式如下 lambda x:x1
#相当于
def calc(x)return x1 2.匿名函数的调用 匿名函数不能直接调用必须赋予一个变量 lambda x:x1
func lambda x:x1
print(func(10)) #结果为11 转载于:https://www.cnblogs.com/lzc69/p/11097998.html