zoukankan      html  css  js  c++  java
  • 【python】函数参数前加*星号的含义

    描述

    加一个*星号:表示参数数量不确定,将传入的参数存储为元组。

    加两个*星号:表示参数数量不确定且参数类型是关键字参数,将传入的参数存储为字典。

    示例

    加一个*星号

    def main(*args):
        print(args)
    
    main(1, 2)
    '''out
    (1, 2)
    '''
    

    加两个*星号

    def main(**kwargs):
        print(kwargs)
    
    main(a=1, b=2)
    '''out
    {'a': 1, 'b': 2}
    '''
    

    拓展

    此外,还有一种常见的*星号用法:

    def main(arg1, *, arg2):
        print(arg1, arg2)
    
    main(1, arg2=2)
    

    这里的*表示占位符,星号前面的参数可以指定参数名赋值,也可以直接赋值;但星号后面的参数是关键字参数,必须指定参数名赋值。

    参考

    https://www.python.org/dev/peps/pep-0612/#using-list-variadics-and-map-variadics

  • 相关阅读:
    162. Find Peak Element
    475. Heaters
    字符串统计
    数据的交换输出
    偶数求和
    青年歌手大奖赛_评委会打分
    蟠桃记
    素数判定
    多项式求和
    出现Presentation Error的解决方法
  • 原文地址:https://www.cnblogs.com/ghgxj/p/14219038.html
Copyright © 2011-2022 走看看