函数传参用法

#1.位置参数,即按位置一个个对应传参

#def calc(a,b,c):
#    print(a*a+2*b+c)
#print(calc(3,5,8))

#2.关键字参数 指定定向赋值

#def calc(a,b,c):
#    print(a*a+2*b+c)
#print(calc(b=3,c=5,a=8))

#3.位置参数和关键字参数混搭传参 且关键字传参一定要在位置传参之后即先位置后关键字

#def calc(a,b,c):
#   print(a*a+2*b+c)
#print(calc(1,2,c=3))

#4.强制关键词参数创建函数框里的*后面全部必须是关键字参数

# calc(*,a,b,c):
#   print(a*a+2*b+c)
#print(calc(a=1,b=2,c=3))

#5.默认参数,先非默认参数再默认参数

#def calc(a,b,c=3):
#    print(a*a+2*b+c)
#print(calc(1,2))

#6.可变参数(位置)*在变量前面是代表可变,无限的意思;除此之外是开包破开的意思;

#def hello(msg,*names):#此时是可变,无限的意识
#   print(*names,msg)#此时是破开的意思 因为*name传进去的是一个元祖
#hello('hi','张三','王五')

#7.可变参数(关键词)

#def hello(msg,**names):#此时代表关键词可变参数
#   print('老大是', names['boss1'],msg)
#   print('老二是', names['boss2'],msg)
#hello('hi',boss1='张三',boss2='王五',guard='赵四')

#8进一步混搭
#顺序必须是:必选参数、默认参数、可变位置参数、命名关键字参和可变关键字参数

#def f(a,b,c,d,*args,e,f,**kwargs):
#    print(a,b,c,d,e,f)
#    print(args)
#    print(kwargs)
#f(1,2,3,4,5,99,e=6,f=7,x=8,y=9,z=10)

#9强制位置参数
#/之前一定必须位置参数

#def f(a,b,/,c,d,*,e,f,**kwargs):
#    print(a,b,c,d,e,f)
#f(3,4,5,6,e=7,f=8,z=9,w=10)

#10开包序列和元组(实际一样,因为元组就是规定好了的序列)

#def f(msg,*names):
#    print(msg,*names)
#names_param=['张三','李四','王五']
#f('新年好',*names_param)

#11开包字典

#def f(msg,**names):
#   print('老大是',names['BOSS'],msg)
#   print('老二是', names['BOSS2'], msg)
#data={'BOSS':'张三','BOSS2':'李四','Guard':'王五'}
#f('新年好',**data)#因为字典本身的意义就是关键字查找,所以在函数定义时需要传参时两个*就代表是关键字参数,这样更容易理解开包字典的用法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值