• python之函数相关知识


    python之函数相关知识

    1、什么是函数

    函数是一种仅在调用时运行的代码块,可以提高代码的复用性

    2、定义函数

    在 Python 中,使用 def 关键字定义函数。定义函数的格式如下:

    def 函数名( [参数] ):
      代码

    示例

    def my_function():
        print("hello world")
    
    • 1
    • 2

    3、调用函数

    定义了函数后,想让它能够执行,需要调用它。调用函数通过函数名称后跟括号 函数名() 即可完成
    示例

    def my_function():
        print("hello world")
    
    my_function()
    
    • 1
    • 2
    • 3
    • 4

    运行结果:
    请添加图片描述

    说明:
    每次调用函数时,函数都会从头开始执行,当该函数中的代码执行完毕后,调用也结束了。如果函数中执行到了return也会结束调用

    4、函数参数

    信息可以作为参数传递给函数,参数在函数名后的括号内指定。发送到函数的参数可以是任何数据类型(字符串、数字、列表、字典等)。

    4.1 定义带有参数的函数

    示例

    # 定义带参数(a和b)的函数
    def add_function(a,b):
        c = a + b
        print(c)
    
    • 1
    • 2
    • 3
    • 4

    4.2 调用带有参数的函数

    示例

    def add_function(a,b):
        c = a + b
        print(c)
    
    # 调用此函数时,我们必须传入两个参数,不然会出现语法错误报错
    add_function(1,2)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    运行结果:
    请添加图片描述

    4.3 关键字参数

    使用关键字参数允许函数调用时参数的顺序与声明时不一致
    示例

    def add_function(a,b):
        print(a, b)
    
    add_function(1,2)    # 不指定时按参数顺序对应
    add_function(a=1, b=2)
    add_function(b=1, a=2)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    运行结果:
    请添加图片描述

    4.4 默认参数

    在定义函数时,若直接给形参指定一个默认值,那么即便调用函数时没有给拥有默认值的形参传递参数,该参数可以直接使用定义函数时设置的默认值。指定有默认值的形参必须在所有无默认值参数的最后。
    说明:
    定义函数时圆括号中的参数,用来接收参数用的,称为“形参”
    调用函数时圆括号中的参数,用来传递给函数用的,称为“实参”

    示例

    # add_function() 函数有 2 个参数,其中第 2 个设有默认参数
    def add_function(a,b=3):
        c = a + b
        print(c)
    
    # 在调用 add_function() 函数时,我们可以仅传入 1 个参数,此时该参数会传给 a 参数,而 b 会使用默认的参数
    add_function(1)
    
    # 在调用 add_function() 函数时,也可以给所有的参数传值,这时即便 b 有默认值,它也会优先使用传递给它的新值
    add_function(1,2)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    运行结果:
    请添加图片描述

    4.5 不定长参数

    如果我们不知道将传递多少个参数给我们的函数,即参数数目未知,可以在函数定义参数名称前加星号 * 。 加了星号 * 的变量名会存放所有未命名的变量参数,函数将接收一个参数元组,并可以相应地访问各项
    示例

    def my_function(*fruit):
      print("My favorite fruit is " + fruit[2])
    
    my_function("banana", "apple", "watermelon", "strawberry")
    
    • 1
    • 2
    • 3
    • 4

    运行结果:
    请添加图片描述

    5、函数返回值

    如果想要在函数中把结果返回给调用者,需要使用 return 语句。在Python中,函数如果不写返回值,有一个默认的返回值 None。 return 代表的是函数的结束,return 后面的代码都不会运行。
    示例1

    def add_function(a,b):
        c = a + b
        return c
    
    print(add_function(1,2))
    
    • 1
    • 2
    • 3
    • 4
    • 5

    运行结果:
    请添加图片描述

    示例2

    def add_function(a, b):
      c = a + b
      print(c)
    
    # 函数运算之后得出的一个返回值(不会打印出来)。返回值用 add_function(1,2) 表示,然后赋值给 x
    x = add_function(1,2)
    print(x)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    运行结果:
    请添加图片描述

    6、pass语句

    函数定义不能为空,但是如果要写无内容的函数定义,需使用 pass 语句来避免错误
    示例

    def my_function():
      pass
    
    • 1
    • 2

    7、函数递归

    如果一个函数内部调用自己,那么这个函数就称为递归函数。递归要注意结束条件,也称为递归出口,防止函数无限调用
    示例

    # 用递归计算阶乘
    def func(n):
      if n==1:
        return 1
      else:
        return n*func(n-1)
    
    print(func(5))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    运行结果:
    请添加图片描述

  • 相关阅读:
    【服务器数据恢复】服务器光纤共享存储互斥失败的数据恢复案例
    Java面向对象编程(四)
    【matplotlib 实战】--漏斗图
    【Java】高效利用异常处理技巧
    【架构师】的修炼之道都需要学习哪些?看看这些就够了
    ubuntu安装rust教程
    【AI视野·今日Sound 声学论文速览 第十七期】Tue, 3 Oct 2023
    PG守护进程(Postmaster)——辅助进程PgStat统计消息
    python: Sorting Algorithms
    服务器中间件的种类和日常使用
  • 原文地址:https://blog.csdn.net/qq_45158642/article/details/127779360