参数
函数参数的作用: 传递数据给函数使用。
函数参数的形式: 形式参数、实际参数。
形参: 定义函数时的参数。
实参: 调用函数时的参数。
形参分类:
位置参数 | 函数调用时的数量、位置、参数类型必须和定义时的一致 |
默认参数 | 函数定义时,为参数设置一个默认值,当函数调用时,没有传入这个参数值,直接使用这个默认值;定义函数时,默认参数必须指向不可变对象;如果指向可变对象,多次调用,可能得到的不是意料之内的结果。 |
可变参数 | 可变参数有两种形式:一种是‘*args’,另一种是‘*kwargs’。‘*args’:这种形式表示接受任意多个实际参数将其放到一个元组中。‘*kwags’:这种形式表示接受任意多个实际参数将其放到一个字典中,类似关键字参数 |
关键字参数 | 函数调用时,使用形参的名字=输入的参数值,此位置可与定义时不一致。 |
位置参数:形参和实参必须保持一致
def getinfo(name,age):
print('姓名:',name,'年龄:',age)
getinfo('westos',12)
getinfo(12,'westos')
getinfo(age=12,name='westos')
默认参数
def mypow(x, y=2):
print(x ** y)
mypow(2, 3)
mypow(2)
可变参数
def mysum(*args):
print(*args)
print(args)
sum = 0
for item in args:
sum += item
print(sum)
mysum(1, 2, 3, 4, 5)
num1=[1,2,3]
num2=(1,2,3)
num3={1,2,3}
mysum(*num1)
mysum(*num2)
mysum(*num3)
关键字参数
def getinfo(name, age, **kwargs):
print(name)
print(age)
print(kwargs)
# print(**kwargs)
getinfo('westos', 12, hobbies=['code', 'running'], gender='female')
另一种表示方法: