• 技术文章 >常见问题 >Python常见问题

    Python函数的参数有几种

    silencementsilencement2019-10-25 13:53:00原创8215

    Python中函数的参数可以分为位置参数,关键字参数和默认参数。下面我们一一来讲解。

    位置参数,有时也称必备参数,指的是必须按照正确的顺序将实际参数传到函数中,换句话说,调用函数时传入实际参数的数量和位置都必须和定义函数时保持一致。

    实参和形参数量必须一致

    在调用函数,指定的实际参数的数量,必须和形式参数的数量一致(传多传少都不行),否则 Python 解释器会抛出 TypeError 异常,并提示缺少必要的位置参数。

    例如

    例如,设计一个求梯形面积的函数,并利用此函数求上底为 4cm,下底为 3cm,高为 5cm 的梯形的面积。但如果交互高和下低参数的传入位置,计算结果将导致错误:

    def area(upper_base,lower_bottom,height):
        return (upper_base+lower_bottom)*height/2
    print("正确结果为:",area(4,3,5))
    print("错误结果为:",area(4,5,3))

    运行结果为:

    正确结果为: 17.5
    错误结果为: 13.5

    关键字参数是指使用形式参数的名字来确定输入的参数值。通过此方式指定函数实参时,不再需要与形参的位置完全一致,只要将参数名写正确即可。

    # 定义一个函数
    def girth(width , height):
        print("width: ", width)
        print("height: ", height)
        return 2 * (width + height)
    # 传统调用函数的方式,根据位置传入参数
    print(girth(3.5, 4.8))
    # 根据关键字参数来传入参数
    print(girth(width = 3.5, height = 4.8))
    # 使用关键字参数时可交换位置
    print(girth(height = 4.8, width = 3.5))
    # 部分使用关键字参数,部分使用位置参数
    print(girth(3.5, height = 4.8))

    默认参数 调用函数时没有给拥有默认值的形参传递参数,该参数可以直接使用定义函数时设置的默认值。

    定义带有默认值参数的函数,其语法格式如下:

    def 函数名(...,形参名=默认值):
        代码块

    例如

    # 为两个参数指定默认值
    def say_hi(name = "孙悟空", message = "欢迎来到PHP中文网"):
        print(name, ", 您好")
        print("消息是:", message)

    更多学习内容,请点击Python学习网

    专题推荐:参数
    上一篇:Python的函数能返回多个值吗 下一篇:Python怎么调用实例方法

    相关文章推荐

    • 详解python中函数的参数传递• python怎么传参数• python如何输入参数个数• python的函数输入两个参数吗

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网