#_*_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传递给关键字参数
例子:上代码