1. 首页
  2. 技术文章

15、Python函数

在本文中,您将了解函数,函数是什么,函数的语法,组件和类型。此外,您还将学习在Python中创建函数。

Python中的函数是什么?

在Python中,函数是一组执行特定任务的相关语句。

函数有助于将我们的程序分解为较小的模块化块。随着我们的计划变得越来越大,功能使其变得更有组织性和可管理性。

此外,它避免了重复并使代码可重复使用。

功能语法

def function_name(parameters):
	"""docstring"""
	statement(s)

上面显示的是一个由以下组件组成的函数定义。

  1. def标记函数头开始的关键字。
  2. 用于唯一标识功能的功能名称。函数命名遵循在Python中编写标识符的相同规则。
  3. 通过其将值传递给函数的参数(参数)。它们是可选的。
  4. 冒号(:)标记函数头的结尾。
  5. 可选的文档字符串(docstring),用于描述函数的功能。
  6. 组成函数体的一个或多个有效python语句。语句必须具有相同的缩进级别(通常为4个空格)。
  7. return从函数返回值的可选语句。

函数示例

def greet(name):
    """
    This function greets to
    the person passed in as
    a parameter
    """
    print("Hello, " + name + ". Good morning!")

如何在python中调用函数?

一旦定义了一个函数,就可以从另一个函数,程序甚至Python提示符下调用它。要调用函数,我们只需键入带有适当参数的函数名称即可。

>>> greet('Paul')
Hello, Paul. Good morning!

注意:尝试在带有功能定义的Python程序中运行以上代码,以查看输出。

def greet(name):
    """
    This function greets to
    the person passed in as
    a parameter
    """
    print("Hello, " + name + ". Good morning!")

greet('Paul')

Docstrings

函数头之后的第一个字符串称为docstring,是文档字符串的缩写。简要说明了函数的作用。

尽管是可选的,但文档是一种良好的编程习惯。除非您记得上周的晚餐时间,否则请务必记录您的代码。

在上面的示例中,我们在函数标头下方有一个文档字符串。我们通常使用三引号,以便文档字符串可以扩展到多行。该字符串可作为__doc__函数的属性提供给我们。

例如

尝试将以下内容运行到Python shell中以查看输出。

>>> print(greet.__doc__)

    This function greets to
    the person passed in as
    a parameter

return声明

return语句用于退出函数并返回到调用它的位置。

return语法

return [expression_list]

该语句可以包含一个表达式,该表达式将被求值并返回值。如果该语句中没有表达式,或者该return语句本身不存在于函数中,则该函数将返回该None对象。

例如:

>>> print(greet("May"))
Hello, May. Good morning!
None

None是返回值,因为它greet()直接打印名称并且不return使用任何语句。


return示例

def absolute_value(num):
    """This function returns the absolute
    value of the entered number"""

    if num >= 0:
        return num
    else:
        return -num


print(absolute_value(2))

print(absolute_value(-4))

输出

2
4

Function如何在Python中工作?

函数如何在Python中工作?
Python中的函数工作

变量的范围和寿命

变量的范围是程序中可以识别该变量的部分。从函数外部看不到在函数内部定义的参数和变量。因此,它们具有本地范围。

变量的生存期是变量在内存中退出的时间。函数内部变量的生存期与函数执行的时间一样长。

一旦我们从函数中返回,它们就会被销毁。因此,函数无法记住其先前调用中的变量值。

这是一个示例,说明函数内部变量的范围。

def my_func():
	x = 10
	print("Value inside function:",x)

x = 20
my_func()
print("Value outside function:",x)

输出

Value inside function: 10
Value outside function: 20

在这里,我们可以看到 X最初是20。即使函数my_func()更改了X 到10,则不影响函数外部的值。

这是因为变量 X内部函数与外部函数不同(局部于函数)。尽管它们具有相同的名称,但是它们是两个具有不同作用域的不同变量。

另一方面,从外部可以看到函数外部的变量。它们具有全球范围。

我们可以从函数内部读取这些值,但不能更改(写入)它们。为了在函数外部修改变量的值,必须使用关键字将它们声明为全局变量global


功能类型

基本上,我们可以将函数分为以下两种类型:

  1. 内置函数-Python内置的函数。
  2. 用户定义的功能-用户自己定义的功能。
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站不拥有所有权,不承担相关法律责任。如发现有侵权/违规的内容, 联系QQ1841324605,本站将立刻清除。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

评论列表(2条)

联系我们

服务热线:130-0886-1890

QR code