Python 函数和匿名函数 Lambda
Python 函数
函数是一段可重复使用的代码块,它会在调用时执行特定的任务。你可以根据需要向函数传递不同的参数,或者通过函数返回值获取结果。
定义函数
在 Python 中,使用 def
定义函数。下面是一个简单的示例:
def greet(name):
"""
打印一个简单的问候语
name: str,表示要被问候的人的姓名
"""
print(f"Hello, {name}!")
在此示例中,greet
函数接受一个 name
参数,并打印一个问候语。
调用函数
要使用 greet
函数,只需要将一个字符串作为参数传递给它:
greet("World")
# Output: Hello, World!
函数参数
Python 函数可以接受不同数量的参数。下面是一个接受两个参数的示例:
def add_numbers(x, y):
"""
返回两个数的和
x, y: int,要相加的两个数
"""
return x + y
在此示例中,add_numbers
函数接受两个参数 x
和 y
,并返回它们的和。
函数返回值
要从函数中返回值,使用 return
语句。下面是一个返回某个数的平方的示例:
def square(number):
"""
返回一个数的平方
number: int,要被平方的数
"""
return number ** 2
在此示例中,square
函数接受一个参数 number
,并返回它的平方。
Python 匿名函数 lambda
匿名函数是没有名称的函数,也称为 lambda 函数。lambda 表达式通常用于函数参数。它们是一种快捷方式,可以在不定义正式函数的情况下编写简短的函数。
基本语法
lambda 表达式使用 lambda
关键字定义,并可以有一个或多个参数。下面是一个简单的示例:
greet = lambda name: print(f"Hello, {name}!")
在此示例中,我们定义了一个名为 greet
的 lambda 函数,并传递了一个参数 name
。lambda 函数体仅有一行,打印了一个问候语。注意,我们不需要使用 return
语句。
在函数参数中使用 lambda 函数
lambda 函数通常用于函数参数,以便我们可以在函数调用时动态地定义一个小型函数。下面是一个将给定列表中的所有字符串转换为大写字母的示例:
strings = ["Hello", "World", "Python"]
uppercase_strings = list(map(lambda string: string.upper(), strings))
print(uppercase_strings)
# ["HELLO", "WORLD", "PYTHON"]
在此示例中,map
函数接受两个参数:一个函数和一个可迭代对象(列表)。lambda
函数定义了如何转换列表中的每个字符串。map
函数将这个函数应用于每个字符串,并返回一个新的列表,其中所有字符串都转换为大写字母。
在条件表达式中使用 lambda 函数
lambda 函数也可以用于条件表达式,例如:
# 判断一个数字是不是偶数
is_even = lambda number: True if number % 2 == 0 else False
print(is_even(2)) # True
print(is_even(3)) # False
在此示例中,is_even
lambda 函数接受一个参数 number
,并返回一个表示该数字是否为偶数的布尔值。在 lambda 函数体中,我们使用条件表达式来判断数字是偶数还是奇数。
总结
Python 函数是可重复使用的代码块,用于执行特定的任务。函数可以接受任意数量的参数,并可以返回值。Python lambda 函数是没有名称的函数,可以在不定义正式函数的情况下编写简短的函数。它们通常用于函数参数和条件表达式。