python中对于函数中参数的详解

函数中参数时候很重要的,不仅仅是我们常用的一些必填参数,可缺省参数,还包括一些,关键字参数等,这边主要是自己一些学习心得~

1.必填参数

    顾名思义必填参数就是调用函数的时候必须传入的参数

def func1(a):   #a就是函数中必须传入的参数
    print(a)

调用函数func1(3)  #结果是3,如果不传入参数3调用就会出错
2.缺省参数

   函数定义的时候会给一个默认值,如果调用函数的时候没有传入值就直接读取默认值

def func1(a,b=4):  #b=4就是缺省参数,当b没有参数传入的时候就取默认值
     print(a)
     print(b)
func1(1)   #结果是1,4
func1(1,3) #结果是1,3  当b给了值以后就取给的值当没有值的时候就取默认值

参数调用的顺序,必填参数一定在缺省参数前面 

3.可变数量参数

   参数:*args,函数定义的时候*将多个组装成元组,函数调用的时候*是将列表跟元组都一个个展开的作用

def func1(*args):  #定义的时候是一个元组
    s=0
    for i in args:
        s=s+i
    return s
func1(1,2,3,4)  #调用的时候是将元组的内容一个个传入10

调用的时候如果 可缺省参数没有指定的时候,除了必传参数有值以外,其他的值都是可变参数的值,并且会将可变参数自动封装成元组

def func1(a,*args,b=1):
    print(a)
    print(*args)
    print(b)
func1(1,2,3,4,5)  #a=1,*args=(2,3,4,5),b=1
func1(1,2,3,4,b=5)#a=1,*args=(2,3,4),b=5

可变参数也可以不传数量,可变数量参数可以是任何类型的数值

4.关键字可变数量参数

参数:**kwargs,函数定义的时候会将参数封装成字典,调用的时候可以不传参数,如果不传参数结果就是一个空字典,传参要使用key=value的方式,这样会将这个参数自动封装成字典

def func1(a,**kwargs):
    print(a)
    print(**kwargs)
dict1={'name':'tom','age':'18'}
func1(10,**dict1)=func(10,name='tom',age='18')  #调用的时候字典要使用key-value的方式结果10,{'name':'tom','age':'18'}

 5.函数中参数的作用域

    局部变量:在函数内部定义的变量,如果想将这个局部变量修改成全局变量,需要在函数内部变量名前面加global

def func1(a):
    s=0 
    s=s+a
    return s
def func2():
    m=0
    m=s+m    #s是上个函数的局部变量这边直接引用会报错
    return m
ll=func2()
print(ll)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值