python函数参数分类

一、位置参数

特点:调用函数时传入的参数与函数在接收参数时位置是保持一致的

如:

def  add(x,y):

      return x+y

add(3,7)             #=> 10

 

二、关键字参数

特点:1.函数定义时必须指定默认值

           2.函数调用时可以指定参数名

如:

def  sub(x=0,y=0):

       return x-y

sub()                   #=> 0

sub(y=1,x=7)     #=>  6

#关键字参数也支持位置参数的调用方式,只要不指定参数名即可

sub(3,1)            #=>  2

 

三、动态参数(变长参数)

1)动态位置参数

特点:1.参数名之前加上一个*符号

           2.参数数量是可以动态变化的

           3.只能动态接收位置参数

如:

def  sum(*num):

       temp=0

      for n in num:

           temp+=n

     return temp

sum(1)          #=>  1

sum(1,2)       #=>  3

sum(1,2,3)    #=>  6     #num是一个数组,它会接收所有的传入参数

2)动态关键字参数

特点:1.参数名之前加上两个**符号

           2.参数数量是可以动态变化的

           3.可以动态的接收关键字参数

如:

def  foo(**kargv):

      for k,v in kargv.items():

           print (k,v)

foo(x=1,y=2,z=3)         

#=> 'x', 1

#=> 'y', 2

#=> 'z', 3

 

四、匿名函数(lambda表达式)

特点:1.定义函数时没有函数名

           2.定义匿名函数使用lambda关键字

           3.参数:函数体(函数体不能显式地使用return语句)

如:

lambda x,y:x+y

功能等效为如下函数:

def foo(x,y):

     return x+y

调用场景:

foo=lambda x:x

foo(1)                    #先赋值给一个变量,然后直接调用该变量

(lambda x:x)(1)     #使用括弧 间接调用

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值