zoukankan      html  css  js  c++  java
  • Python中函数参数 *args 和 **kwargs

    • 普通参数,即在调用函数时必须按照准确的顺序来进行参数传递。

    • 默认参数,即参数含有默认值,在调用函数时可以进行参数传递,若没有进行参数传递则使用默认值,要注意,默认参数必须在普通参数的右侧(否则解释器无法解析)。

    • 元组参数,即 *args,参数格式化存储在一个元组中,长度没有限制,必须位于普通参数和默认参数之后。

    • 字典参数,即 **kwargs,参数格式化存储在一个字典中,必须位于参数列表的最后面。

    普通参数

    def fun(name):
        print('Hello', name)
    
    
    fun('World')#Hello World

    默认参数

    def fun(name, age=1):
        print('Hello', name, age, '')
    
    
    fun('World')  # Hello World 1 年

    元组参数

    def fun(name, age=1, *args):
        print('Hello', name, age, '')  # Hello World 1 年
        print(args)  # ('I', 'love', 'it')
        for i in args:
            print(i)
    
    
    fun('World', 1, 'I', 'love', 'it')  
    
    I
    love
    it

    字典参数,要在最后

    def fun(name, age=1, *args, **kwargs):
    print('Hello', name, age, '年') # Hello World 1 年
    print(args) # ('I', 'love', 'it')
    for i in args:
    print(i)
    print(kwargs) # {'my': 'jack', 'like': 'girl'}
    for m in kwargs:
    print(m, ':', kwargs[m])


    fun('World', 1, 'I', 'love', 'it', my='jack', like='girl')

    Hello World 1 年
    ('I', 'love', 'it')
    I
    love
    it
    {'my': 'jack', 'like': 'girl'}
    my : jack
    like : girl

  • 相关阅读:
    C++ 面向对象编程3 封装 继承 多态
    C++ 面向对象编程2
    C++ 面向对象编程1
    C++开发环境和基础语法
    RTOS概述
    STM32F4 窗口看门狗(WWDG)
    STM32F407 独立看门狗 (IWDG)
    DHT11温湿度传感器
    Ubuntu20.04安装、配置、卸载QT5.9.9与QT creator以及第一个编写QT程序
    Linux,Ubuntu20.04LTS环境下安装JDK1.8和IDEA2021
  • 原文地址:https://www.cnblogs.com/xusuns/p/8269163.html
Copyright © 2011-2022 走看看