函数是任何编程语言中的基本构建块,Python 也不例外。它们允许您将代码组织成可重用、易于管理的块,从而提高可读性、可维护性和效率。本教程将指导您学习 Python 函数的核心概念。
目录
什么是 Python 函数?
Python 函数是一段自包含的代码块,用于执行特定任务。它是一种封装逻辑的方法,使您的程序更模块化,更容易理解。函数提高了代码的可重用性;无需多次编写相同的代码,只需编写一次,并在需要时调用。
定义 Python 函数
您可以使用def
关键字定义函数,后跟函数名、括号()
和冒号:
。缩进的函数体包含要执行的代码。参数(输入)在括号内指定。
def greet(name):
"""此函数向传入的参数问好。"""
print(f"Hello, {name}!")
def add(x, y):
"""此函数将两个数字相加并返回总和。"""
return x + y
关键元素:
def
:指示函数定义的关键字。- 函数名:遵循 Python 命名约定(小写,下划线)的描述性名称。
- 参数:接收输入值的括号内的变量。
- 文档字符串:用三个引号(
"""Docstring goes here"""
)括起来的字符串,解释函数的目的。对可读性至关重要。 - 函数体:缩进的代码块。
return
语句(可选):指定函数返回的值。
函数示例
以下是一些说明函数定义和使用方法不同方面的示例:
def calculate_area(length, width):
"""计算矩形的面积。"""
return length * width
area = calculate_area(5, 10) # 调用函数
print(f"The area is: {area}") # 输出:The area is: 50
def factorial(n):
"""计算非负整数的阶乘。"""
if n == 0:
return 1
else:
return n * factorial(n-1) #递归函数
print(factorial(5)) # 输出:120
调用函数
要使用函数,请按其名称后跟括号调用它,并提供任何必需的参数(参数的值)。
greet("Alice") # 输出:Hello, Alice!
sum_result = add(5, 3)
print(sum_result) # 输出:8
return
语句
return
语句指定函数发送回调用者的值。如果省略,函数隐式返回None
。
def no_return():
print("此函数不返回值。")
def with_return():
return 42
print(no_return()) # 输出:此函数不返回值。 None
print(with_return()) # 输出:42
变量作用域和生命周期
在函数内定义的变量具有局部作用域——只能在该函数内访问。在函数外部定义的变量具有全局作用域——可在整个程序中访问。变量的生命周期是其在内存中存在的时间;局部变量仅在函数执行期间存在。
函数类型
Python 支持几种函数类型:
- 内置函数:预定义的函数,例如
print()
、len()
、input()
。 - 用户定义函数:程序员创建的函数。
- 递归函数:调用自身的函数(如上面的
factorial
示例)。 - Lambda 函数(匿名函数):使用
lambda
关键字定义的小型未命名函数,通常用于简短操作。
本教程提供了对 Python 函数的基础理解。进一步探索高级主题,如默认参数、关键字参数、可变长度参数(*args
和**kwargs
)和装饰器,将显著增强您的 Python 编程技能。