Python函数

以下是这一节中,我们要来介绍的关于Python函数的知识点:

  • 什么是函数
  • 如何来创建函数
  • 函数的类型

什么是Python函数

函数是一小块程序,它包含许多执行特定任务的单行或多行语句。假如说你有一个数千行执行不同任务的代码,那么你应该将程序划分为小模块(块),也就是将它们切割为不同的函数,这样可以提高代码的可读性并降低其复杂度。

如何来定义Python函数

以下是Python的定义函数的语法:

def functionName(arguments):
    """This is the definition of this function"""
    statements
    return returnParam
  1. 关键字def用于定义声明函数。
  2. functionName 是函数的名称。
  3. arguments是可选的,它参数提供了用于执行操作的输入值。
  4. 冒号(:)放在函数头的结尾。
  5. """This is the definition of this function""" 是一个函数文档说明,它是可选项,用来描述该函数的功能。
  6. statements 是函数主体,包括一行或多行代码。
  7. return也是可选项,它将结果返回给该函数的调用者。

Python函数示例:

def language(p):
    """Function to print a message"""
    print("Programming language:", p)

这里language定义了一个函数,它有一个从调用者传递的参数p。在函数内部,有一个docstring-函数文档说明和一个print语句来打印含有参数p的信息。

Python中函数的调用:

你可以从程序中的任何位置来调用已定义的函数,可以通过使用函数名称以及所需输入参数来调用该函数。

language('Python')
Programming language: Python

return 语句:

return语句将控制权转移回调用该函数的代码,它表示了函数定义在此结束。

return的语法如下:

return [values_to_be_returned]

如果函数中没有return语句,则缺省返回一个None对象。

return 语句示例:

def square(n):
    return n*n
print("Square of 4=", square(4))
Square of 4=16

在此代码中,square(n)函数在print函数中被调用,4作为输入参数被传递进去。在函数内部,有一个计算的达式-n*n,计算的结果返回到调用函数的位置(print语句)。

Python变量的作用范围和生命周期:

变量的作用范围是该变量能被访问的有效范围。当在函数内部声明变量时,在函数的外部无法访问它,这种类型的变量称为局部变量,只能在声明它的函数内被访问到。

变量的生命周期是变量存在于内存中的时间。当在函数内声明变量时,当函数控制流程跳出该函数时,它的内存将被释放。

如以下示例:

def fun():
    a = 12
    print("Value of a inside function:", a)
a = 24
fun()
print("Value of a outside function:", a)
Value of a inside function: 12
Value of a outside function: 24

在这段代码中,在函数内部的变量a和函数外部的变量a是不同的变量。

如果你尝试从外部访问函数内部声明的变量,你将遇到错误 - NameError name 'x' is not defined。但是在函数外部声明的变量具有全局范围,可以从内部访问。

函数类型:

Python中的函数可以分为两种类型:

  1. 内置函数:预先定义的函数,用以执行特定任务。
  2. 自定义函数: 由用户来定义,包含任意数量的语句,用来以执行用户定义的任务。