zoukankan      html  css  js  c++  java
  • 函数中的动态参数

    所谓的动态参数就是在写函数时,你可以传递1个参数,2个参数,3个参数甚至更多,同时也可以忽略它。

    动态参数:一般有两种表示方法: *args 和**kwargs ,它的区别不是在于 args 和kwargs 这里可以替换成任意字母,这里最主要的区别是* 和**

    动态参数跟默认参数一样,要写在位置参数的后面

    def func(name,age,sex,class="1001",*args,**kwargs):
    pass

    *args 和**kwargs 的区别:

    • *args:1个* 表示接收的任意参数,调用的时候,会将实际参数一以元组的形式传给形式参数。如果参数是一个列表,将会把整个列表当做一个参数传递

    例如:

    def func(*args):
        print(args)
    
    func("a","b","c")
    func(["1","2","3"])
    结果:
    ('a', 'b', 'c') (['1', '2', '3'],)
    • 如上列表的结果,我的本意是想把列表中的数字分别输出,但是这里却是以一个参数的形式输出。如果需要把列表中的数字分别输出就要在前面加个*,这里可以理解为给列表脱外套
    def func(*args):
        for arg in args:
            print(arg)
    
    list_1 = ["a","b","c"]
    func(*list_1)
    • **kwargs:2个**表示接收的是任意键值对的关键字参数,这里调用的时候是以字典的形式传递给形式参数

    例如:

    def stu_info(**kwargs):
        print(kwargs)
    
    stu_info(name="lily",age=18,sex="famle")
    结果:
    {'name': 'lily', 'age': 18, 'sex': 'famle'}
  • 相关阅读:
    大数据时代的艺术金融
    与“数”同行:大数据驱动大学变革
    与“数”同行:大数据驱动大学变革
    财务信息化:大数据小时代
    财务信息化:大数据小时代
    Python导出DBF文件到Excel的方法
    Python导出DBF文件到Excel的方法
    SolrJ的入门
    Spring Data Solr入门
    使用solr进行配置文件
  • 原文地址:https://www.cnblogs.com/xiaohanzi/p/10081837.html
Copyright © 2011-2022 走看看