函数参数详解

1.形参与实参,形参就是变量,实参就是有一个具体的值

位置参数:实参与形参一一对应(x,y,z  1,2,3)          关键字参数:位置不用固定顺序,但是也不能少(x=1,y=2,z=3) 

如果混合使用,位置参数必须在关键字参数左边     #test(1,3,z=2)

默认参数:提前给形参赋值,但是之后也可以重新给值      #def test(x,type="mysql")

参数组: 非固定常用参数   # def test(x,*args)  此例中的*args就是一个元组     **字典 *元组

def cast(x,*args):
    print(args)   #注意print的空格
cast(1,5,7,8)

(5, 7, 8)
cast(1, *[1,5,8]) #可以直接用列表赋值,加*号就是循环赋值,就会一个一个赋值,如果不加*号就是整体赋值

cast(1, **{"name":"hehe"}) #可以直接用字典赋值,加**号就是循环赋值,就会一个一个赋值,如果不加**号就是整体赋值

test(1,y=2,z=3,z=3) #会报错, 一个参数不能传两个值

test(x,*args,**kwargs): #如果都要使用,那么args必须要在kwargs前面
def test(x,*args,**kwargs):
    print(x)
    print(args,args[-1])
    print(kwargs,kwargs.get('y'))
# test(1,1,2,1,1,11,1,x=1,y=2,z=3) #报错 因为x赋值了两次
# test(1,1,2,1,1,11,1,y=2,z=3)

 

 

2.可以有多个return,但是到第一个return就运行结束了

3.局部变量与全局变量

posted on 2018-05-04 11:23  monster7  阅读(184)  评论(0)    收藏  举报

导航