zoukankan      html  css  js  c++  java
  • python 中 *args he **kwargs的区别

    '''
    一 *args 和 **kwargs 的区别?
        *args 表示任意个 无名参数, 类型是元祖 tuple.
        **kwargs 表示的是关键字的参数 传入的参数是 dict 类型。
    
        当*和**符号出现在函数定义的参数中时,表示任意数目参数收集。
        *arg表示任意多个无名参数,类型为tuple;**kwargs表示关键字参数,为dict。
        使用时需将*arg放在**kwargs之前,否则会有“SyntaxError: non-keyword arg after keyword arg”的语法错误
    
    二  dict 类型? 字典!
            python中唯一的映射类型,是一种键值对方式。
            key 是唯一的,根据key值得到values
    
    '''
    
    
    # 只要有* 标示符号即可,用haha 也能使用。 规范是args
    def demo(*haha):
        for i in haha:
            print(i)
    
    
    demo(2, 3, 4, 444)
    #       打印结果
    # 2
    # 3
    # 4
    # 444
    
    '''
        **kwargs  键值对的方式
        **会以键/值对的形式解包一个字典,使其成为独立的关键字参数。
    '''
    
    
    def demo2(**xixi):
        print(xixi)
        key = xixi.keys()
        values = xixi.values()
        print(key)
        print(values)
    
    
    demo2(a=1, b=2, c=3)
    #       打印结果。
    # {'a': 1, 'b': 2, 'c': 3}
    # dict_keys(['a', 'b', 'c'])
    # dict_values([1, 2, 3])
  • 相关阅读:
    monitor system
    monitor disk
    manage account
    windows
    backup daily
    shell 脚本编程概述
    OGNL表达式
    Struts2各个功能详解(2)-输入校验和拦截器
    struts2各个功能详解(1)----参数自动封装和类型自动转换
    Struts2源码解析2
  • 原文地址:https://www.cnblogs.com/ZXF6/p/14068882.html
Copyright © 2011-2022 走看看