zoukankan      html  css  js  c++  java
  • 默认参数,不固定参数 *args,**kwargs

    默认参数

    默认参数就是定义参数的时候,给形参赋值。

    自己看

    def test(x,y=3):
        print(x)
        print(y)
    test(1)         test(1,y=5)
    test(1,5)

    1,特点,调用函数的时候,默认参数非必须传递

    2,用途,

      可以提前把一些值固定住,例如默认安装值

      固定链接数据库的端口号

     

    不固定参数

    #args:接受N个位置参数,转换成元组

    实例1
    def test(*args):
        print(args)
    #args:接受N个位置参数,转换成元组
    test(32,23,11,31,22,44,11)
    test(*[32,23,11,31,22,44,11])  #args=tuple([32,23,11,31,22,44,11])

      实例2

    def test1(x,*args):
        print(x)
        print(args)
    
    test1(1,32,3,44,3)

      

    #**kwargs    把N个关键字参数转换成字典

    实例3

    def test2(**kwargs):    #把N个关键字参数转换成字典
        print(kwargs)
    test2(name='qiangql',age=12,job='fuzeshuai')
    test2(**{'name':'qiangql','age':12,'job':'shuai'})

    实例4

    def test3(name,**kwargs):
        print(name)
        print(kwargs)
    test3('qiangql',age=12)

    实例5

    def test4(name,age=12,**kwargs): #参数组往后放
        print(name)
        print(age)
        print(kwargs)
    test4('qiangql')
    test4('qiangql',sex='m',hobby='bmw',job='shuai')

    实例6
    def test5(name,age=12,*args,**kwargs): #位置参数不能在关键字参数后边
        print(name)
        print(age)
        print(args)     #*args 接受位置参数
        print(kwargs)   #kwargs接受字典,关键字参数
    
    test5('qiangql' ,sex='m',hobby='bmw',job='shuai') 

     

  • 相关阅读:
    双线性过滤
    textureView
    cubemap
    selfshadow
    cbuffer padding
    异常
    Python深浅拷贝
    数据类型分类
    集合类型内置方法
    字典数据类型内置方法
  • 原文地址:https://www.cnblogs.com/PYlog/p/8624236.html
Copyright © 2011-2022 走看看