1.位置参数:
def weizhi(name,age):
print(name,age)
weizhi('张三',21) #name和age,这两个参数都是位置参数,调用的时候,传入的两个值按照顺序,依次赋值给name和age。
2.默认参数:
def moren(name,age=21):
print(name,age)
moren('张三') #如果默认参数不写就用默认参数值,如果写就覆盖默认参数
注意:必选参数在前,默认参数在后,否则python解释器会报错,默认参数一定要指向不变对象
3.可变参数:
有时候我们需要录入多条数据怎么办?
可以用可变参数来接受
def kebain(*args):
print(args)
kebain([1,2,3,4,5,6])
注意:可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple。
4.命名关键字参数:
def mmgjz(*, city, job):
print(city,job)
mmgjz(city='123', job='456') #只接收city和job的参数,其他,不接收
作用:限制要传入的参数的名字,只能传我已命名关键字参数。
特征:命名关键字参数需要一个特殊分隔符*,而后面的参数被视为命名关键字参数。
5.关键字参数:
def guanjianzi(**kwargs):
print(kwargs)
num = {'name':'zhangsna'}
guanjianzi(**num)
# 注意:关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict。在调用函数时,可以只传入必选参数
# 作用:扩展函数的功能