python3学习之自定义函数

发布时间:2019-09-25 08:15:48编辑:auto阅读(1759)

    静态参数:



    def  函数名(参数1,参数2=默认值):

    """

    注释文档

    """

        print("测试")

        return "abc"

    说明:

    参数可以有多个,并可以指定默认值;一定要写注释文档


    动态参数:


    def  函数名(*args):               ##接收任意数据,作为元组中的元素

        print("测试")

        return "abc"


    def  函数名(**args):            ##接收dict序列,作为字典中的元素

        print("测试")

        return "abc"


    def  函数名(*args,**kwargs):  ##万能参数,先是*再是**

        print("测试")

        return "abc"


    例举说明:

    def test(*args,**kwargs):

        print(args,type(args))

        print(kwargs,type(kwargs))


    li = [1,2,3,4]

    dic = {"a":1,"b":2,"c":3}

    test(li)                    ##(([1, 2, 3, 4],), <type 'tuple'>),li作为元组的一个元素

    test(*li)                    ##((1, 2, 3, 4), <type 'tuple'>),li的元素分别是元组的元素

    test(tt=dic)                ##({'tt': {'a': 1, 'c': 3, 'b': 2}}, <type 'dict'>),dic作为tt的value

    test(**dic)                ##({'a': 1, 'c': 3, 'b': 2}, <type 'dict'>),dic的键值对传给kwargs的键值对


    也可以test(*li,**dic)这样赋值



关键字