利用接口函数 使用策略模式
时间: 2024-02-09 20:04:58 浏览: 79
策略模式是一种行为设计模式,它允许在运行时选择算法的行为。在策略模式中,我们定义了一个接口或抽象类,该接口或抽象类定义了一组算法。然后,我们可以根据需要选择具体的算法实现。
在使用接口函数实现策略模式时,我们可以定义一个接口函数,该函数接受一些参数,并根据这些参数执行不同的算法。然后,我们可以根据需要传递不同的参数值来选择不同的算法实现。
下面是一个使用接口函数实现策略模式的示例:
```python
def strategy_add(a, b):
return a + b
def strategy_subtract(a, b):
return a - b
def strategy_multiply(a, b):
return a * b
def strategy_divide(a, b):
return a / b
def execute_strategy(strategy, a, b):
return strategy(a, b)
# 使用加法策略
result = execute_strategy(strategy_add, 5, 3)
print(result) # 输出:8
# 使用减法策略
result = execute_strategy(strategy_subtract, 5, 3)
print(result) # 输出:2
# 使用乘法策略
result = execute_strategy(strategy_multiply, 5, 3)
print(result) # 输出:15
# 使用除法策略
result = execute_strategy(strategy_divide, 6, 3)
print(result) # 输出:2.0
```
在上面的示例中,我们定义了四个不同的策略函数:`strategy_add`、`strategy_subtract`、`strategy_multiply`和`strategy_divide`。然后,我们定义了一个`execute_strategy`函数,该函数接受一个策略函数作为参数,并根据传递的策略函数执行相应的算法。
通过调用`execute_strategy`函数并传递不同的策略函数,我们可以选择不同的算法实现来执行相应的操作。
阅读全文