轻松掌握python设计模式之策略模式


Posted in Python onNovember 18, 2016

本文实例为大家分享了python策略模式代码,供大家参考,具体内容如下

"""
策略模式
"""
import types

class StrategyExample:
 def __init__(self, func=None):
  self.name = '策略例子0'
  if func is not None:
   """给实例绑定方法用的,不会影响到其他实例"""
   self.execute = types.MethodType(func, self)

 def execute(self):
  print(self.name)

def execute_replacement1(self):
 print(self.name + ' 从执行1')


def execute_replacement2(self):
 print(self.name + ' 从执行2')


if __name__ == '__main__':
 strat0 = StrategyExample()

 strat1 = StrategyExample(execute_replacement1)
 strat1.name = '策略例子1'

 strat2 = StrategyExample(execute_replacement2)
 strat2.name = '策略例子2'

 strat0.execute()
 strat1.execute()
 strat2.execute()

运行结果如图:

轻松掌握python设计模式之策略模式

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
本地文件上传到七牛云服务器示例(七牛云存储)
Jan 11 Python
Python入门篇之函数
Oct 20 Python
python+django加载静态网页模板解析
Dec 12 Python
python3.6 +tkinter GUI编程 实现界面化的文本处理工具(推荐)
Dec 20 Python
Flask框架实现给视图函数增加装饰器操作示例
Jul 16 Python
python中的不可变数据类型与可变数据类型详解
Sep 16 Python
python实现统计文本中单词出现的频率详解
May 20 Python
用python求一个数组的和与平均值的实现方法
Jun 29 Python
tensorflow实现二维平面模拟三维数据教程
Feb 11 Python
Python类的动态绑定实现原理
Mar 21 Python
pandas 像SQL一样使用WHERE IN查询条件说明
Jun 05 Python
基于Python实现nc批量转tif格式
Aug 14 Python
轻松掌握python设计模式之访问者模式
Nov 18 #Python
Win10下Python环境搭建与配置教程
Nov 18 #Python
Python Paramiko模块的安装与使用详解
Nov 18 #Python
Python数据分析之真实IP请求Pandas详解
Nov 18 #Python
Python切换pip安装源的方法详解
Nov 18 #Python
Python max内置函数详细介绍
Nov 17 #Python
Python中的日期时间处理详解
Nov 17 #Python
You might like
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
PHP 中文乱码解决办法总结分析
2009/07/30 PHP
PHP使用适合阅读的格式显示文件大小的方法
2015/03/05 PHP
Laravel 5框架学习之表单
2015/04/08 PHP
PHP限制HTML内容中图片必须是本站的方法
2015/06/16 PHP
PHP排序算法之快速排序(Quick Sort)及其优化算法详解
2018/04/21 PHP
PHP商品秒杀问题解决方案实例详解【mysql与redis】
2019/07/22 PHP
javascript appendChild,innerHTML,join性能比较代码
2009/08/29 Javascript
javascript 必知必会之closure
2009/09/21 Javascript
javascript利用初始化数据装配模版的实现代码
2010/11/17 Javascript
jquery中防刷IP流量软件影响统计的一点对策
2011/07/10 Javascript
javascript中常用编程知识
2013/04/08 Javascript
全面了解JS中的匿名函数
2016/06/29 Javascript
jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
2016/10/10 Javascript
解析JavaScript数组方法reduce
2016/12/12 Javascript
谈谈JS中常遇到的浏览器兼容问题和解决方法
2016/12/17 Javascript
微信小程序实现折线图的示例代码
2019/06/07 Javascript
[52:26]完美世界DOTA2联赛决赛 FTD vs Phoenix 第一场 11.08
2020/11/11 DOTA
python模拟新浪微博登陆功能(新浪微博爬虫)
2013/12/24 Python
Python中使用glob和rmtree删除目录子目录及所有文件的例子
2014/11/21 Python
跟老齐学Python之使用Python操作数据库(1)
2014/11/25 Python
Python读写文件方法总结
2015/06/09 Python
Python发送http请求解析返回json的实例
2018/03/26 Python
Python自定义装饰器原理与用法实例分析
2018/07/16 Python
Django+Uwsgi+Nginx如何实现生产环境部署
2020/07/31 Python
Python实现淘宝秒杀功能的示例代码
2021/01/19 Python
一文读懂python Scrapy爬虫框架
2021/02/24 Python
html5 canvas绘制放射性渐变色效果
2018/01/04 HTML / CSS
大整数数相乘的问题
2012/07/22 面试题
小溪流的歌教学反思
2014/02/13 职场文书
家长会主持词
2014/03/26 职场文书
行政执法作风整顿剖析材料
2014/10/11 职场文书
生活小常识广播稿
2015/08/19 职场文书
纪检干部学习心得体会
2016/01/23 职场文书
浅谈redis五大数据结构和使用场景
2021/04/12 Redis
CSS3实现列表无限滚动/轮播效果
2021/06/23 HTML / CSS