python3 函数 – Python3教程

上一章Python教程请查看:python3 pass语句
在本文中,你将了解Python的函数:函数是什么、函数的语法、函数的组成和函数类型,此外你还将学习如何在Python中创建函数。
Python中的函数是什么?在Python中,函数是一组执行特定任务的相关语句。
函数帮助我们将程序分解成更小的模块块,随着我们的程序变得越来越大,函数使它变得更有组织和可管理。
此外,它避免了重复并使代码可重用。
【python3 函数 – Python3教程】定义函数的语法:

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

上面显示的是一个由以下组件组成的函数定义。
  • 关键字def标志着函数头的开始。
  • Function_name用来唯一标识它的函数名,函数命名遵循Python中编写标识符的相同规则。
  • 参数(parameters),我们通过它将值传递给函数,他们是可选的。
  • 一个冒号(:)来标记函数头的结尾。
  • 描述函数功能的可选文档字符串(docstring)。
  • 组成函数主体的一个或多个有效python语句,语句必须具有相同的缩进级别(通常为4个空格)。
  • 一个可选的返回语句,从函数返回一个值。
函数的例子
def greet(name): """此函数向 作为参数传入的 人员打招呼""" print("Hello, " + name + ". Good morning!")

如何在python中调用函数?一旦我们定义了一个函数,我们就可以从另一个函数、程序甚至Python提示调用它。要调用一个函数,只需用适当的参数输入函数名。
>>> greet('AAA') Hello, AAA. Good morning!

注意:尝试在Python shell中运行上面的代码以查看输出。
文档字符串函数头后的第一个字符串称为docstring,是文档字符串的缩写,它用于简单地解释函数的作用。
尽管文档是可选的,但它是一种很好的编程实践,除非你记得上周你吃了什么,否则一定要记录你的代码。
在上面的例子中,我们在函数头的下面有一个文档字符串。我们通常使用三重引号,这样docstring可以扩展到多行,这个字符串是函数的_doc__属性。
例如:尝试在Python shell中运行以下代码以查看输出。
>>> print(greet.__doc__)

函数的返回语句return语句用于退出函数并返回到调用函数的位置。
Return语句的语法
return [expression_list]

此语句可以包含得到值并返回值的表达式,如果语句中没有表达式,或者返回语句本身不存在于函数中,那么函数将返回None对象。例如:
>>> print(greet("May")) Hello, May. Good morning! None

在这里,返回的值为None。
返回的例子
def absolute_value(num): """这个函数返回输入 数字的绝对值"""if num >= 0: return num else: return -num# 输出: 2 print(absolute_value(2))# 输出: 4 print(absolute_value(-4))

函数在Python中是如何工作的?
python3 函数 – Python3教程

文章图片
变量的作用域和生命周期变量的作用域是程序中识别变量的部分,在函数内部定义的参数和变量在外部是不可见的,因此,它们具有局部作用域。
变量的声明周期是变量在内存中存在的周期,函数中变量的生命周期与函数执行的时间一样长。
一旦我们从函数返回,它们就被销毁了,因此,函数不会记住前面调用的变量的值。
这里有一个例子来说明函数中变量的作用域。
def my_func(): x = 10 print("函数内部的变量:",x)x = 20 my_func() print("函数外部的变量:",x)

这里,我们可以看到x的初始值是20,即使函数my_func()将x的值更改为10,它也不会影响函数之外的值。
这是因为函数内部的变量x与外部的变量x不同,虽然它们有相同的名称,但它们是两个不同的变量,具有不同的作用域。
另一方面,函数外部的变量从内部是可见的,它们的业务范围遍及全局。
我们可以从函数内部读取这些值,但不能更改(写入)它们。为了修改函数外部变量的值,必须使用关键字global将它们声明为全局变量。
函数的类型基本上,我们可以把函数分为以下两类:
内置函数——内置在Python中的函数。
用户定义函数——由用户自己定义的函数。

    推荐阅读