在Python中定义函数,可以用必选参数、默认参数、可变参数、关键字参数和命名关键字参数,这5种参数都可以组合使用。但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数。
def person5(name, age=20, *args, city, **kw):
print('name:', name, 'age:',age, 'args:', args, 'city:', city, 'kw:', kw)
person5('myname', 20, 'myjob', 'myweight', 'myheight', city='mycity', englishname='yuanzhiying', language='mylanguage')
可变参数相当于一个元组tuple,关键字参数相当于一个字典dict.
可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple。而关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict