今日详细内容介绍
可变长参数在实参、形参中的作用
1.可变长参数在形参的作用
*作用:*用来接收实参中多余的位置参数,并组织以元组的形式传递给*号后面的args变量名
**作用:**用来接收形参中多余的关键字参数,并组织以字典的形式传递给**号后面的kwargs变量名
ps:
def func(*args,**kwargs):
print(args)
print(kwargs)
func()
func(1,2,3)
func([1,2,3],name= 'nana',kw = 123)
2.可变长参数在实参的作用
*作用:类似于for循环一次性拿到容器类型里的数据值,再传递给位置形参中
**作用:把字典的键值对以关键字参数的形式传递给关键字参数中
ps:
def func(*args,**kwargs):
print(args)
print(kwargs)
l1 =[1,2,3,4]
func(*l1)
func(*l1,**l1)
s1 = 'xiao'
func(*s1)
func(*l1,*s1)
func(*s1,name= 'nana',kw = 123)
dic1 ={
'name':'xiao','age':18}
func(*dic1)
dic1 ={
'name':'xiao','age':18}
func(**dic1)
func(*l1,**dic1)
命名关键字参数
需要形参在传参的时候,按照关键字参数,此时用到命名关键字参数
1.关键字参数必须在形参*args的后面
eg:
def func(a,b,*args,c):
print(a,b,c,args)
func(6,4,5,c=3)
2.关键字参数必须在**kwargs前面
eg:
def func(a,b,*args,c,**kwargs):
print(a,b,args,c,kwargs)
func(6,4,5,c=3,d=6,name='nana')
名称空间
名称空间介绍
1.名称空间就是用来存放变量名与数据值之间绑定关系的地方
2.举例说明:
2.1 name = 'nana'
在内存中申请一块内存空间存储nana 然后绑定变量名