按照参数类型划分:位置参数、关键字参数、默认参数、参数组
1. 位置参数
位置参数:是我们在传参的时候,实参传递的顺序按照形参定义的顺序进行传递的传参方式。
def func(name,city):
print('I am %s, I come from %s.'%(name,city))
func('sanery','China')
最常见、最普通的
2. 关键字参数
关键字传参:是我们在传参的时候,以形参等于实参的形式忽略形参定义的顺序进行传参的传参方式。
def func2(name,city):
print('I am %s, I come from %s.'%(name,city))
func2(name='sanery',city='China')
func2(city='China',name='sanery')
func2(name='China',city='sanery')
3. 默认参数
默认值参数,缺省参数:是在我们定义参数的时候,我们给形参一个默认值,在我们调用函数的时候,如果不给有默认参数的形参传参,会自动采用默认值。
def show(city,name = "python"):
print(city,name)
show('heyuan')
show('shenzhen',"golang")
heyuan python
shenzhen golang
4. 参数组
参数组:处理比当初声明时更多的参数,会将传入的参数变成元组(*args)或者字典(**kwargs),声明的时候不用重命名。
# *args
def func4(*args):
print(args)
func4()
func4(1)
func4(1,2,3)
# **kwargs
def func5(a,b,c,*d,**e):
print(a,b,c,d,e)
func5(1,2,3,4,5,6,7,8,aa=1,bb=2,cc=3,dd=4)
()
(1,)
(1, 2, 3)
1 2 3 (4, 5, 6, 7, 8) {'aa': 1, 'bb': 2, 'cc': 3, 'dd': 4}
关注我,带你一起写bug
warning :未经授权,不得转载
有问题的小伙伴请在下方留言,喜欢就点个赞吧