zoukankan      html  css  js  c++  java
  • python_函数参数

    1.参数的基本知识

    • 任意个数
    • 任意类型
    def func(a1,a2,a3):
        print(a1,a2,a3)
    # 参数可以是任意个数和任意类型
    func(1,'waf',True)

    2.位置传参数(调用函数并传入参数)

      实参数量和形惨数量要保持一致,并且顺序保持一致

    3.关键字传参数

    def func(a1,a2):
        print(a1,a2)
    # 实参直接给形参赋值,顺序可以调整
    func(a2 = 'wdc',a1 = 123)

      #关键字传参和位置传参可以混合使用

    def func(a1,a2,a3):
        print(a1,a2,a3)
    # 但必须把位置传参放前面。关键字传参放后面
    func('wdc',123,a3='rwq')

    4.默认参数

    # 在定义函数时,可以设置默认函数的值,a3的参数可以传可以不传
    # 如果传的话,参数为传的值,如果不传则为默认值
    def func(a1,a2,a3='yhf'):
        print(a1,a2,a3)
    func(123,'wdc')
    func(123,'wdc','qweqe')

    5.万能参数(打散)

      *args

    # *args将所有获取到的参数放到一个元组里面,*a可以接受任意个参数
    def func(*args):
        print(args)
    func(123,'wdc')
    func(123,'wdc','qweqe',(1,2,3))

    def func(*args):
    print(args)
    # 元组里面套个元组
    func((11, 22, 33, 44, 55))# a = ((11, 22, 33, 44, 55),)
    # 元组前面带*可以将元组打散
    func(*(11,22,33,44,55))# a = (11, 22, 33, 44, 55)

    # 第一个参数给a1,其他参数给args
    def func(a1,*args):
    print(a1,args)
    func('wdc',123,456,789)

    # 这种情况下a2只能用关键字传参数
    def func(a1,*args,a2):
    print(a1,args,a2)
    func('wdc',123,456,789,a2='yhf')

       #不支持关键字传参,只支持位置传参

      **kwargs

    # 可接受任意个关键字参数
    # **v1只能传关键字参数,生成一个字典{k1:1,k2:2}
    def func(**kwargs):
        print(kwargs)
    func(k1 = 1,k2 = 2)

    def func(**kwargs):
    print(kwargs)
    # 传递字典参数
    func(**{'k1':1,'k2':2})
    func(k1 = {'k1':1,'k2':2})
       输出结果:

      综合应用

    # 真·万能参数
    def func(*args,**kwargs):
        print(args,kwargs)
    func(1,2,3,k1 = 123,k2 = 'wdc')
    func(*(1,2,3),k1 = 123,k2 = 'wdc')
    func(*(1,2,3),**{'k1':123,'k2':'wdc'},k3 = 'yhf')
  • 相关阅读:
    kbmmw 5.14.00 发布
    关于C++ auto使用要注意的一点
    git设置socks5代理
    电子书分享网站
    spring cache相关
    intellij idea开启debug热加载/热部署
    git 多次commit合并成一次提交
    es feature一览
    数据中台
    Java Agent
  • 原文地址:https://www.cnblogs.com/wangdianchao/p/11471490.html
Copyright © 2011-2022 走看看