python中类的一些方法分析


Posted in Python onSeptember 25, 2014

本文实例分析了python中类的一些方法,分享给大家供大家参考。具体分析如下:

先来看看下面这段代码:

class Super: 
  def delegate(self): 
    self.action() 
     
class Provider(Super): 
  def action(self): 
    print 'in Provider.action' 
     
x = Provider() 
x.delegate()

本文实例运行环境为Python2.7.6

运行结果如下:

in Provider.action 

在Super类中定义delegate()方法,delegate中调用self.action,在Provider子类中实现action方法。子类调用父类的delegate方法时,实际是调用自己的action方法。。

总之一句话:

这里子类实现了父类delegate中所期望的action方法

再来看看下面这段代码:

class Super: 
  def delegate(self): 
    self.action() 
  def method(self): 
    print 'super method' 
   
class Inherit(Super): 
  pass 
 
class Replace(Super): 
  def method(self): 
    print "replace method" 
     
class Extended(Super): 
  def method(self): 
    print 'in extended class' 
    Super.method(self) 
    print 'out extended class' 
   
class Provider(Super): 
  def action(self): 
    print 'in Provider.action' 
     
x = Inherit() 
x.method() 
print '*'*50 
 
y = Replace() 
y.method() 
print '*'*50 
 
z = Extended() 
z.method() 
print '*'*50 
 
x = Provider() 
x.delegate()

运行结果如下:

super method 
************************************************** 
replace method 
************************************************** 
in extended class 
super method 
out extended class 
************************************************** 
in Provider.action

分别继承父类的方法,替换父类的方法,扩展了父类的方法
Super类定义了delegate方法并期待子类实现action函数,Provider子类实现了action方法.

相信本文所述对大家Python程序设计的学习有一定的借鉴价值。

Python 相关文章推荐
Python实现统计单词出现的个数
May 28 Python
通过数据库对Django进行删除字段和删除模型的操作
Jul 21 Python
python中安装Scrapy模块依赖包汇总
Jul 02 Python
解决tensorflow测试模型时NotFoundError错误的问题
Jul 27 Python
Python实现的json文件读取及中文乱码显示问题解决方法
Aug 06 Python
Python 单元测试(unittest)的使用小结
Nov 14 Python
python配置grpc环境
Jan 01 Python
Python中PyQt5/PySide2的按钮控件使用实例
Aug 17 Python
详解Django CAS 解决方案
Oct 30 Python
python连接打印机实现打印文档、图片、pdf文件等功能
Feb 07 Python
django 实现简单的插入视频
Apr 07 Python
django rest framework 过滤时间操作
Jul 12 Python
python实现获取序列中最小的几个元素
Sep 25 #Python
python中bisect模块用法实例
Sep 25 #Python
python实现给字典添加条目的方法
Sep 25 #Python
python实现忽略大小写对字符串列表排序的方法
Sep 25 #Python
python对字典进行排序实例
Sep 25 #Python
python实现在无须过多援引的情况下创建字典的方法
Sep 25 #Python
python迭代器实例简析
Sep 25 #Python
You might like
杏林同学录(六)
2006/10/09 PHP
Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
2017/02/15 PHP
redirect_uri参数错误的解决方法(必看)
2017/02/16 PHP
Laravel5框架添加自定义辅助函数的方法
2018/08/01 PHP
在网页中控制wmplayer播放器
2006/07/01 Javascript
公共js在页面底部加载的注意事项介绍
2013/07/18 Javascript
Three.js学习之Lamber材质和Phong材质
2016/08/04 Javascript
微信小程序开发(一) 微信登录流程详解
2017/01/11 Javascript
老生常谈js中0到底是 true 还是 false
2017/03/08 Javascript
JS库 Highlightjs 添加代码行号的实现代码
2017/09/13 Javascript
js中DOM事件绑定分析
2018/03/18 Javascript
Vue EventBus自定义组件事件传递
2018/06/25 Javascript
Vue2.0点击切换类名改变样式的方法
2018/08/22 Javascript
vue多次循环操作示例
2019/02/08 Javascript
微信小程序授权登陆及每次检查是否授权实例代码
2019/09/18 Javascript
javascript 代码是如何被压缩的示例代码
2020/05/06 Javascript
JS代码简洁方式之函数方法详解
2020/07/28 Javascript
js实现鼠标切换图片(无定时器)
2021/01/27 Javascript
详解Django中的ifequal和ifnotequal标签使用
2015/07/16 Python
利用python实现xml与数据库读取转换的方法
2017/06/17 Python
Python3.6连接Oracle数据库的方法详解
2018/05/18 Python
Python实现合并两个列表的方法分析
2018/05/28 Python
Python下应用opencv 实现人脸检测功能
2019/10/24 Python
CSS3弹性盒模型开发笔记(一)
2016/04/26 HTML / CSS
StubHub智利:购买和出售您的门票
2016/11/23 全球购物
预订全球最佳旅行体验:Viator
2018/03/30 全球购物
database面试题
2013/03/28 面试题
模具设计与制造专业推荐信
2014/02/16 职场文书
讲文明树新风公益广告宣传方案
2014/02/25 职场文书
财产保全担保书范文
2014/04/01 职场文书
2015年党员个人自我评价
2015/03/03 职场文书
节约用电通知
2015/04/25 职场文书
债务追讨律师函
2015/06/24 职场文书
2019企业文化管理制度范本!
2019/08/06 职场文书
Redis三种集群模式详解
2021/10/05 Redis
Python人工智能之混合高斯模型运动目标检测详解分析
2021/11/07 Python