jiyanjiao-702521
#_*_coding=\'utf-8\'
#可变参数
def person(name,age,*args):
    #定义了可变参数args
    print(\'传入的名字为:\',name)
    print(\'传入的年龄为:\',age)
    print(\'传入的可变参数为:\',args)

if __name__ == \'__main__\':
    person(\'张三\',24)
    person(\'张三\',24,\'家庭地址是北京\',\'爱好是唱歌\')
\'\'\'
打印结果:
传入的名字为: 张三
传入的年龄为: 24
传入的可变参数为: ()

传入的名字为: 张三
传入的年龄为: 24
传入的可变参数为: (\'家庭地址是北京\', \'爱好是唱歌\')
\'\'\'

#关键字参数
def person(name,age,** kwargs):
    #定义关键字参数:** kwargs
    print(\'输入的名字为:\',name)
    print(\'输入的年龄为:\',age)
    print(\'数据的关键字为:\',kwargs)


if __name__ == \'__main__\':
    person(\'张三\',24)
    person(\'张三\',24,hoby = \'没啥爱好\')

\'\'\'
打印结果为:
输入的名字为: 张三
输入的年龄为: 24
数据的关键字为: {}
输入的名字为: 张三
输入的年龄为: 24
数据的关键字为: {\'hoby\': \'没啥爱好\'}
\'\'\'

 

1.可变参数的理解:

  • 一个函数能接受任意个数的参数

  • 可变参数名字前有一个 *

  • 原理:python解释器会把传入的一组参数组装成一个tuple传递给可变参数

例子:上代码更加比较好理解

2.关键字参数的理解:

  • 能接受任意个参数

  • 关键字参数前有2个 **

  • 原理:python解释器会把传入的一组参数组装成一个dict传递给关键字参数

例子:上代码

 

分类:

技术点:

相关文章: