Python 的高阶函数是一种函数,它接受一个或多个函数作为参数,或者返回一个函数。高阶函数是 Python 中非常强大的特性之一,它使得代码更加简洁、易于复用。
常见的高阶函数
以下是一些常见的高阶函数:
filter()
: 过滤序列,根据函数的结果返回一个新序列。map()
: 将一个函数应用到序列的每个元素上,并返回一个新的序列。lambda
: 创建匿名函数。
filter() 示例
def is_even(n):
return n % 2 == 0
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = filter(is_even, numbers)
print(list(even_numbers)) # 输出: [2, 4, 6]
map() 示例
def square(n):
return n * n
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(square, numbers)
print(list(squared_numbers)) # 输出: [1, 4, 9, 16, 25]
lambda 示例
squared_numbers = map(lambda x: x * x, numbers)
print(list(squared_numbers)) # 输出: [1, 4, 9, 16, 25]
高阶函数的应用
高阶函数在 Python 中有很多应用,比如:
- 数据处理
- 网络请求
- 文件操作
数据处理
高阶函数可以用来处理大量数据,例如:
data = [1, 2, 3, 4, 5]
print(sum(data)) # 输出: 15
网络请求
高阶函数可以用来处理网络请求,例如:
import requests
def fetch_url(url):
response = requests.get(url)
return response.text
content = fetch_url('https://www.example.com')
print(content)
文件操作
高阶函数可以用来处理文件,例如:
def read_file(file_path):
with open(file_path, 'r') as file:
return file.read()
content = read_file('/path/to/file.txt')
print(content)