Python函数基础概念
函数是一段可重复使用的代码块,用于执行特定任务。通过def关键字定义,包含函数名、参数和函数体。
示例:定义简单函数
def greet(name):
return f"Hello, {name}!"
print(greet("Alice")) # 输出:Hello, Alice!
函数参数类型
-
位置参数:按顺序传递值。
def add(a, b): return a + b print(add(2, 3)) # 输出:5 -
默认参数:参数有默认值,调用时可省略。
def power(x, n=2): return x ** n print(power(3)) # 输出:9(使用默认n=2) -
可变参数:
*args:接收任意数量的位置参数(元组形式)。**kwargs:接收任意数量的关键字参数(字典形式)。
def show_args(*args, **kwargs): print("位置参数:", args) print("关键字参数:", kwargs) show_args(1, 2, name="Alice")
返回值与作用域
- 使用
return返回结果,未指定时返回None。 - 变量作用域分局部变量(函数内)和全局变量(函数外),使用
global声明全局变量。
示例:作用域演示
x = 10 # 全局变量
def update_x():
global x
x = 20
update_x()
print(x) # 输出:20
匿名函数(Lambda)
用于简单操作,语法为lambda 参数: 表达式。
square = lambda x: x ** 2
print(square(4)) # 输出:16
高阶函数
函数可作为参数或返回值。常见内置高阶函数:
map(func, iterable):对可迭代对象应用函数。filter(func, iterable):过滤满足条件的元素。reduce(func, iterable)(需导入functools):累积计算。
示例:使用map
nums = [1, 2, 3]
squared = list(map(lambda x: x**2, nums))
print(squared) # 输出:[1, 4, 9]
装饰器
用于扩展函数功能,语法为@decorator。
示例:计时装饰器
import time
def timer(func):
def wrapper(*args, **kwargs):
start = time.time()
result = func(*args, **kwargs)
end = time.time()
print(f"耗时:{end - start:.2f}秒")
return result
return wrapper
@timer
def slow_function():
time.sleep(2)
slow_function() # 输出执行时间
文档字符串(Docstring)
描述函数用途,通过__doc__访问。
def add(a, b):
"""返回两个数的和。"""
return a + b
print(add.__doc__) # 输出:返回两个数的和。
通过以上方法,可以系统掌握Python函数的核心用法,从基础到进阶逐步深入。
5271

被折叠的 条评论
为什么被折叠?



