zoukankan      html  css  js  c++  java
  • python之可变长参数

    参数组:*args,**kwargs

    实参有按位置和按关键字两种形式定义,*args和**kwargs
    1. 位置参数:按照从左到右的顺序定义的参数 位置形参:必选参数 位置实参:按照位置给形参传值
    2. 关键字参数:按照key=value的形式定义的实参
              无需按照位置为形参传值
              注意的问题:
                      1. 关键字实参必须在位置实参右面
                      2. 对同一个形参不能重复传值
     
    • 加了星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数
    # 可写函数说明
    def printinfo( arg1, *vartuple ):
       "打印任何传入的参数"
       print ("输出: ")
       print (arg1)
       print (vartuple)
     
    # 调用printinfo 函数
    printinfo( 70, 60, 50 )

    result

    输出: 
    70
    (60, 50)
    • 加了两个星号 ** 的参数会以字典的形式导入
    # 可写函数说明
    def printinfo( arg1, **vardict ):
       "打印任何传入的参数"
       print ("输出: ")
       print (arg1)
       print (vardict)
     
    # 调用printinfo 函数
    printinfo(1, a=2,b=3)  #一个参数不能赋两个值

    result

    1
    {'a': 2, 'b': 3}
  • 相关阅读:
    PostMessage
    __stdcall
    C++中L和_T()之区别
    号外:百度开源了它的人工智能技术
    最棒的Unity Github 项目收集(2016)
    OpenGL学习笔记——求值器和NURBS
    unity3d四元数和旋转矩阵
    C# System.Timers.Time
    进程地址空间分布
    子进程与父进程
  • 原文地址:https://www.cnblogs.com/houyu/p/10765041.html
Copyright © 2011-2022 走看看