码迷,mamicode.com
首页 > 其他好文 > 详细

函数的四种传参方式

时间:2019-10-18 18:45:40      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:code   动态   可迭代对象   导致   rgs   方式   关键字   否则   默认   

# 函数
# 四种传参方式,位置参数,关键字参数,动态传参,动态关键字传参

def fun1(a,b):
    print(a,b)

fun1("a",b=b)
# result:a,b位置参数和关键字参数混合应用


def fun1(a,b,*lst,e="e"):
    print(a,b,lst,e)

fun1("a",b,c,d)

# result:a b (‘c‘, ‘d‘) e 动态传参必须在位置参数之后,默认值参数之前,否则默认值参数永远不生效,位置参数永远没有值


def fun1(a,b,*lst,**kwargs):
    print(a,b,lst,kwargs)

fun1("a",b,c,d,e="e",f="f")
# result:a b (‘c‘, ‘d‘) {‘e‘: ‘e‘, ‘f‘: ‘f‘} 关键字动态传参必须放在最后,因为关键字传参放在位置参数前会导致程序错乱报错


def fun1(*args):
    print(args)

lst = [1,2,3,4]
fun1(*lst)
# result:(1, 2, 3, 4)实参位置传一个可迭代对象加*代表将这个对象按顺序打散,如果是字典也可以打散

def fun1(**kwargs):
    print(kwargs)

dic = {a:a,b:b}
fun1(**dic)
# result:{‘a‘: ‘a‘, ‘b‘: ‘b‘}

 

函数的四种传参方式

标签:code   动态   可迭代对象   导致   rgs   方式   关键字   否则   默认   

原文地址:https://www.cnblogs.com/tengx/p/11699695.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!