轻松掌握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 相关文章推荐
python 实现登录网页的操作方法
May 11 Python
Python基于property实现类的特性操作示例
Jun 15 Python
用pycharm开发django项目示例代码
Oct 24 Python
python远程连接MySQL数据库
Apr 19 Python
Django ORM filter() 的运用详解
May 14 Python
如何教少儿学习Python编程
Jul 10 Python
基于CentOS搭建Python Django环境过程解析
Aug 24 Python
python合并多个excel文件的示例
Sep 23 Python
Python爬虫之Selenium多窗口切换的实现
Dec 04 Python
Python爬虫设置Cookie解决网站拦截并爬取蚂蚁短租的问题
Feb 22 Python
python中random模块详解
Mar 01 Python
Python入门之基础语法详解
May 11 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
神族 Protoss 历史背景
2020/03/14 星际争霸
php SQL防注入代码集合
2008/04/25 PHP
PHP实现货币换算的方法
2014/11/29 PHP
php对二维数组进行相关操作(排序、转换、去空白等)
2015/11/04 PHP
PHP中TP5 上传文件的实例详解
2017/07/31 PHP
Laravel中unique和exists验证规则的优化详解
2018/01/28 PHP
php使用Swoole实现毫秒级定时任务的方法
2020/09/04 PHP
音乐播放用的的几个函数
2006/09/07 Javascript
Dreamweaver jQuery智能提示插件,支持版本提示,支持1.6api
2011/07/31 Javascript
拖动table标题实现改变td的大小(css+js代码)
2013/04/16 Javascript
JQuery中使用.each()遍历元素学习笔记
2014/11/08 Javascript
PHP中CURL的几个经典应用实例
2015/01/23 Javascript
Javascript 高阶函数使用介绍
2015/06/15 Javascript
第四篇Bootstrap网格系统偏移列和嵌套列
2016/06/21 Javascript
Vue.js路由组件vue-router使用方法详解
2016/12/02 Javascript
jQuery排序插件tableSorter使用方法
2017/02/10 Javascript
使用SVG基本操作API的实例讲解
2017/09/14 Javascript
微信小程序数据存储与取值详解
2018/01/30 Javascript
微信小程序手机号码验证功能的实例代码
2018/08/28 Javascript
VUE DOM加载后执行自定义事件的方法
2018/09/07 Javascript
[03:49]2016完美“圣”典风云人物:AMS专访
2016/12/06 DOTA
python使用urllib2提交http post请求的方法
2015/05/26 Python
Python验证码识别处理实例
2015/12/28 Python
python使用电子邮件模块smtplib的方法
2016/08/28 Python
python 3.0 模拟用户登录功能并实现三次错误锁定
2017/11/01 Python
python3.5绘制随机漫步图
2018/08/27 Python
利用python求积分的实例
2019/07/03 Python
python连接mysql有哪些方法
2020/06/24 Python
探矿工程师自荐信
2014/01/24 职场文书
办公室副主任职责范本
2014/03/08 职场文书
春风行动实施方案
2014/03/28 职场文书
《望庐山瀑布》教学反思
2014/04/22 职场文书
保护黄河倡议书
2014/05/16 职场文书
九九重阳节标语
2014/10/07 职场文书
承诺书的签字人,需不需要承担相应的责任?
2019/07/09 职场文书
Python NumPy灰度图像的压缩原理讲解
2021/08/04 Python