zoukankan      html  css  js  c++  java
  • python中的函数(定义、多个返回值、默认参数、参数组)

    函数定义


    在python中函数的定义以及调用如下代码所示:

    def test(x):
        y = x+1
        return y
    
    result = test(2)
    print(result)

    多个返回值的情况


    如果在函数中return多个值,会将那多个值打包成一个元组传出,如下代码所示

    def test(x):
        y1 = x+1
        y2 = x+2
        return y1,y2
    
    result = test(2)
    print(result) #打印结果为(3, 4)

    使用关键字参数的情况


    使用关键字参数,则传参的位置可以不固定,但是个数还是要相匹配,此外在调用的时候关键字参数一定要在普通参数的右边,如下代码所示

    def test(x,y,z):
        res = x - y - z
        return res
    
    result = test(y=1,x=5,z=2)
    print(result) #打印结果为2

    使用默认参数的情况


    使用默认参数,传参的个数可以不匹配,如果默认参数的位置没有传,则使用默认值,这个是在定义的时候定义的,定义默认参数要写在最右边,如下代码所示

    def test(name,sex = "man"):
        print(name)
        print(sex)
    
    test("CodeScrew")
    #打印结果为CodeScrew  man
    test("CodeScrew","women")
    #打印结果为CodeScrew  women

    使用参数组的情况


    参数组中指的是可以传任意参数,一般**对应字典,*对应列表,如下代码所示

    • 传入列表
    def test(name,*args):
        print(name)
        print(args)
    
    test("CodeScrew",*[1,2,3,4])
    #打印结果为CodeScrew   (1, 2, 3, 4)
    • 传入字典
    def test(name,**kwargs):
        print(name)
        print(kwargs)
    
    test("CodeScrew",x=1,y=2)
    #打印结果为CodeScrew   {'x': 1, 'y': 2}
    test("CodeScrew",**{"x":1,"y":2})
    #打印结果为CodeScrew   {'x': 1, 'y': 2}
    def test(x,y,z):
    res = x - y - z
    return res

    result = test(y=1,x=5,z=2)
    print(result) #打印结果为2
  • 相关阅读:
    SIFT 特征提取算法总结
    Bilateral Filtering(双边滤波) for SSAO(转)
    Meanshift filter实现简单图片的卡通化效果
    HBM内存介绍
    DRAM 内存介绍(三)
    Arduino教程:MPU6050的数据获取、分析与处理
    pitch yaw roll是什么
    通过经纬度坐标计算距离的方法(经纬度距离计算)ZZ
    关于已知两点经纬度求球面最短距离的公式推导
    [Math]理解卡尔曼滤波器 (Understanding Kalman Filter)
  • 原文地址:https://www.cnblogs.com/codescrew/p/8650979.html
Copyright © 2011-2022 走看看