Python函数基础概念
函数是一段可重复使用的代码块,用于执行特定任务。通过定义函数,可以将复杂问题分解为更小、更易管理的部分。
函数定义语法:
`def function_name(parameters):
"""函数文档字符串"""
# 函数体
return value`
示例:
`def greet(name):
"""打印问候语"""
print(f"Hello, {name}!")
return len(name)
`
函数参数类型
位置参数: 按定义顺序传递的参数
`def power(base, exponent):
return base ** exponent
`
默认参数: 定义时指定默认值的参数
`def greet(name, message="Hello"):
print(f"{message}, {name}!")
`
可变参数: 处理不确定数量参数
`def sum_all(*numbers):
return sum(numbers)
`
函数返回值
函数通过return语句返回值,未指定时返回None。可以返回多个值(实际上是元组)。
多返回值示例:
`def min_max(numbers):
return min(numbers), max(numbers)
`
变量作用域
局部变量: 函数内定义的变量,仅在函数内有效
全局变量: 函数外定义的变量,需使用global关键字修改
`count = 0
def increment():
global count
count += 1
`
匿名函数(lambda)
用于创建小型匿名函数
`square = lambda x: x ** 2
sorted_list = sorted([(1,2),(3,1)], key=lambda x: x[1])
`
内置常用函数
数学运算: abs(), round(), pow(), divmod()
类型转换: int(), float(), str(), bool()
迭代处理: map(), filter(), reduce(), zip()
最佳实践建议
- 保持函数单一职责原则
- 限制函数参数数量(通常不超过5个)
- 使用描述性函数名
- 为复杂函数添加文档字符串
- 避免修改全局变量
- 控制函数长度(建议不超过50行)
调试技巧
使用print()或logging输出中间结果
`def calculate(a, b):
print(f"Inputs: {a}, {b}") # 调试输出
result = a * b + 2
print(f"Result: {result}") # 调试输出
return result`
IDE调试工具可设置断点逐步执行,检查变量值变化。