python中函数详解
时间: 2025-06-29 16:10:25 浏览: 1
### Python 函数定义
Python 中函数通过 `def` 关键字定义,其基本结构如下:
```python
def function_name(parameters):
"""
函数的文档字符串,可选
"""
# 函数体
return value # 可选
```
此结构展示了如何创建一个具有名称、参数列表以及可能返回值的函数[^2]。
### 参数传递
#### 位置参数
最简单的形式是按顺序提供给定数量的位置参数。例如:
```python
def greet(first_name, last_name):
print(f"Hello {first_name} {last_name}")
greet("John", "Doe") # 输出 Hello John Doe
```
#### 关键字参数
除了按照固定顺序传递外,还可以利用关键字指定参数值,这使得调用更加灵活并能改变参数输入次序[^4]:
```python
def introduce(name, age):
print('I am {}, I am {} years old'.format(name, age))
introduce(age=30, name="Alice")
```
#### 默认参数
当某些参数有预设值时,则称为默认参数,在未给出具体数值的情况下自动采用该设定值:
```python
def describe_pet(pet_type='dog'):
print(f"I have a {pet_type}")
describe_pet() # 使用默认值 dog
describe_pet('cat') # 覆盖默认值 cat
```
### 变量作用域
在 Python 函数内部使用的变量遵循局部优先原则;如果尝试修改全局范围内的名字则需显式声明为 global 或者 nonlocal 来指示意图[^1]。
```python
global_var = 10
def modify_global():
global global_var
global_var += 5
modify_global()
print(global_var) # 结果为 15
```
对于嵌套函数中的外部层本地变量访问同样适用上述规则,不过此时应使用 `nonlocal` 声明而非 `global`.
### 返回值
并非所有的操作都需要显式的输出结果,但是大多数情况下会希望得到处理后的数据作为反馈。可以通过 `return` 语句来完成这一目的,并且可以是一组对象组成的元组等形式.
```python
def add_and_multiply(x, y):
addition = x + y
multiplication = x * y
return addition, multiplication
result_addition, result_multiplication = add_and_multiply(3, 4)
print(result_addition, result_multiplication) # 打印两个返回的结果
```
阅读全文
相关推荐













