在 Python 中,函数是组织代码的基本单位。它们可以接收参数,执行一系列操作,并返回结果。以下是关于函数的定义、调用、参数、递归和 Lambda 函数的详细解释和示例。
使用 def
关键字定义函数,函数名后跟一对圆括号和一个冒号,函数体缩进。
def greet(name):
print(f"Hello, {name}!")
通过函数名和一对圆括号调用函数,可以传递参数。
greet("Alice") # 输出: Hello, Alice!
函数参数包括位置参数、默认参数、可变参数和关键字参数。
按顺序传递的参数。
def add(a, b):
return a + b
result = add(3, 5)
print(result) # 输出: 8
在定义函数时为参数提供默认值。
def greet(name="Guest"):
print(f"Hello, {name}!")
greet() # 输出: Hello, Guest!
greet("Bob") # 输出: Hello, Bob!
使用 *args
接收任意数量的位置参数,使用 **kwargs
接收任意数量的关键字参数。
def print_numbers(*args):
for number in args:
print(number)
print_numbers(1, 2, 3, 4)
def print_info(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
print_info(name="Alice", age=30, city="New York")
通过参数名传递参数。
def greet(first_name, last_name):
print(f"Hello, {first_name} {last_name}!")
greet(last_name="Doe", first_name="John")
递归是指函数调用自身。递归函数需要一个终止条件以避免无限循环。
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
print(factorial(5)) # 输出: 120
Lambda 函数是一种简短的匿名函数,使用 lambda
关键字定义。Lambda 函数可以有多个参数,但只能有一个表达式。
# 定义一个 Lambda 函数
add = lambda x, y: x + y
# 调用 Lambda 函数
result = add(3, 5)
print(result) # 输出: 8
# 在列表中使用 Lambda 函数
numbers = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x**2, numbers))
print(squared) # 输出: [1, 4, 9, 16, 25]
函数可以使用 return
语句返回值。如果没有 return
语句,函数默认返回 None
。
def square(x):
return x * x
result = square(4)
print(result) # 输出: 16
使用三重引号 """
定义文档字符串,为函数添加描述。
def add(a, b):
"""
返回两个数的和。
参数:
a -- 第一个数
b -- 第二个数
"""
return a + b
print(add.__doc__)
def
关键字定义函数,通过函数名调用。*args
和 **kwargs
)和关键字参数。return
语句返回值。理解和掌握这些概念,可以帮助你在 Python 中编写高效、可维护的函数。
原文链接:codingdict.net