函数的定义
在 Python 中,函数是使用 def
关键字定义的。下面是一个简单的函数示例:
def greet(name):
return f"Hello, {name}!"
-
def
关键字用于声明函数。 -
greet
是函数的名字。 -
name
是函数的参数,它可以接收调用函数时传入的值。 -
return
语句用来返回结果,它可以返回任何数据类型。
调用函数
定义函数后,你可以通过传入参数来调用它:
result = greet("Alice")
print(result) # 输出: Hello, Alice!
参数和返回值
-
位置参数:按照位置传递参数。
-
关键字参数:通过参数名称传递参数。例如:
greet(name='Alice')
-
默认参数:在函数定义时为参数提供默认值。例如:
def greet(name="World"): return f"Hello, {name}!" print(greet()) # 输出: Hello, World!
-
可变参数:使用
*args
和**kwargs
接收多个参数。def print_args(*args): for arg in args: print(arg) print_args(1, 2, 3) # 输出: 1 2 3
-
返回值:函数可以返回多个值,使用逗号分隔。
def swap(a, b): return b, a x, y = swap(1, 2) print(x, y) # 输出: 2 1
作用域
函数内部定义的变量称为局部变量,只在函数内有效。函数外部的变量称为全局变量。
x = 10 # 全局变量
def modify_x():
global x
x = 5
modify_x()
print(x) # 输出: 5
函数的另一种形式
匿名函数:使用 lambda
定义简单的函数。
add = lambda x, y: x + y
print(add(3, 5)) # 输出: 8
高阶函数
Python 的函数是一等公民,这意味着函数可以作为参数传递给其他函数,也可以作为返回值。
def apply_function(func, value):
return func(value)
def square(x):
return x * x
result = apply_function(square, 4)
print(result) # 输出: 16
实践中的使用
函数用于组织逻辑,解决具体问题。例如,计算列表的平均数:
def calculate_average(numbers):
return sum(numbers) / len(numbers)
numbers = [10, 20, 30, 40, 50]
print(calculate_average(numbers)) # 输出: 30.0
通过这种方式,函数可以使代码更易于维护、扩展和测试。掌握函数的使用,是提升编程能力的重要一步。