Python面向对象程序设计示例小结


Posted in Python onJanuary 30, 2019

本文实例讲述了Python面向对象程序设计。分享给大家供大家参考,具体如下:

示例1:

#encoding:utf-8
'''example 1
class test:
  def __init__(self,year,**arg):
    self.year = year
    self.args = arg
  def kaka(self):
    if isinstance(self.year,str):
      print 'input\'s year is a string! Error'
    elif isinstance(self.year,int):
      a = self.year%4
      print a
    else:
      print 'Error!'
  def deal_arg(self):
    # for v in self.args:
    #  print '\n====================\n',v
    for k in self.args:
      print str(k)+'\tvalue is '+str(self.args[k])
    print self.args
a = test(2014,a=123,b=321)
a.kaka()
a.deal_arg()

运行结果:

2
a value is 123
b value is 321
{'a': 123, 'b': 321}

示例2:

#encoding:utf-8
'''example 2'''
class test:
  '这是一个测试的基类'
  def __init__(self,test):
    self.test = test
  '这是一个测试的基类'
print 'test.__doc__:',test.__doc__
print 'test.__name__:',test.__name__
print 'test.__module__:',test.__main__
print 'test.__bases__:',test.__bases__
print 'test.__dict__:',test.__dict__

示例3:

'''example 3 Class inheritance and method partial rewriting'''
class parent:
  def __init__(self):
    print '这是一个父类'
  def ParentsMethond(self):
    print '这是一个父类方法'
  def Parenttest(self,arg):
    self.arg = 'This is a test!'
    print '父类的self变量: %s' %self.arg
    parent.arg = arg
    print '父类的变量: %s' %parent.arg
class child(parent):
  """docstring for child"""
  def __init__(self):
    print '这是一个子类'
  def ChildMethod(self):
    print '调用子类方法 child method'
  def ParentsMethond(self):
    print '父类方法重写!!!!!!!!!!!!!!!!!!!!'
b= parent()
c = child()
c.ChildMethod()
print '*'*10
b.ParentsMethond()
c.ParentsMethond()
print '*'*10
c.Parenttest(3899)

运行结果:

这是一个父类
这是一个子类
调用子类方法 child method
**********
这是一个父类方法
父类方法重写!!!!!!!!!!!!!!!!!!!!
**********
父类的self变量: This is  a test!
父类的变量: 3899

示例4:

'''example 4 Operator overloading'''
class test:
  def __init__(self,a,b):
    self.a = a
    self.b = b
  def __str__(self):
    return 'Vector (%d,%d)' % (self.a,self.b)
  def __add__(self,other):
    return test(self.a+other.a,self.b+other.b)
v1 = test(21,22)
v2 = test(2,3)
print v1 + v2

运行结果:

Vector (23,25)

示例5:

'''#example 5 private class'''
class JustCounter(object):
  """docstring for JustCounter"""
  __secretCount = 0 #私有变量
  publicCount = 0 #公开变量
  def count(self):
    self.__secretCount +=1
    self.publicCount +=1
    print self.__secretCount
counter = JustCounter()
counter.count()
counter.count()
counter.count()
counter.count()
counter.count()
print counter.publicCount
print counter.__secretCount #报错,实例不能访问私有变量
print counter._JustCounter__secreCount

感兴趣的朋友可以测试上述代码运行效果。

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python查询Mysql时返回字典结构的代码
Jun 18 Python
Django发送html邮件的方法
May 26 Python
python统计文本文件内单词数量的方法
May 30 Python
Python采用Django开发自己的博客系统
Sep 29 Python
Python实现在线暴力破解邮箱账号密码功能示例【测试可用】
Sep 06 Python
numpy使用技巧之数组过滤实例代码
Feb 03 Python
Python2实现的图片文本识别功能详解
Jul 11 Python
对pyqt5多线程正确的开启姿势详解
Jun 14 Python
详解Python3迁移接口变化采坑记
Oct 11 Python
Python通过递归获取目录下指定文件代码实例
Nov 07 Python
Python数据分析pandas模块用法实例详解
Nov 20 Python
Scrapy框架实现的登录网站操作示例
Feb 06 Python
python实现浪漫的烟花秀
Jan 30 #Python
新年快乐! python实现绚烂的烟花绽放效果
Jan 30 #Python
python+selenium 定位到元素,无法点击的解决方法
Jan 30 #Python
解决Python selenium get页面很慢时的问题
Jan 30 #Python
对python实现模板生成脚本的方法详解
Jan 30 #Python
ActiveMQ:使用Python访问ActiveMQ的方法
Jan 30 #Python
python 发送和接收ActiveMQ消息的实例
Jan 30 #Python
You might like
使用PHP socke 向指定页面提交数据
2008/07/23 PHP
PHP memcache扩展的三种安装方法
2009/04/26 PHP
CI框架常用方法小结
2016/05/17 PHP
php结合md5的加密解密算法实例
2016/09/30 PHP
php新建文件的方法实例
2019/09/26 PHP
Laravel获取所有的数据库表及结构的方法
2019/10/10 PHP
使用jquery动态加载javascript以减少服务器压力
2012/10/29 Javascript
js前台分页显示后端JAVA数据响应
2013/03/18 Javascript
javascript阻止scroll事件多次执行的思路及实现
2013/11/08 Javascript
jQuery实现鼠标可拖动调整表格列宽度
2014/05/26 Javascript
javascript自定义函数参数传递为字符串格式
2014/07/29 Javascript
javascript的变量、传值、传址、参数之间关系
2015/07/26 Javascript
跟我学习javascript的prototype,getPrototypeOf和__proto__
2015/11/17 Javascript
有关easyui-layout中的收缩层无法显示标题的解决办法
2016/05/10 Javascript
js严格模式总结(分享)
2016/08/22 Javascript
判断颜色是否合法的正则表达式(详解)
2017/05/03 Javascript
基于JavaScript实现五子棋游戏
2020/08/26 Javascript
自定义PC微信扫码登录样式写法
2017/12/12 Javascript
解决三元运算符 报错“SyntaxError: can''t assign to conditional expression”
2020/02/12 Javascript
基于小程序请求接口wx.request封装的类axios请求
2020/07/02 Javascript
Python中的面向对象编程详解(下)
2015/04/13 Python
python使用multiprocessing模块实现带回调函数的异步调用方法
2015/04/18 Python
python实现带声音的摩斯码翻译实现方法
2015/05/20 Python
Python中元组,列表,字典的区别
2017/05/21 Python
Python2实现的LED大数字显示效果示例
2017/09/04 Python
解决python报错MemoryError的问题
2018/06/26 Python
Python 实现自动完成A4标签排版打印功能
2020/04/09 Python
使用opencv识别图像红色区域,并输出红色区域中心点坐标
2020/06/02 Python
详解Python利用configparser对配置文件进行读写操作
2020/11/03 Python
HTML5和CSS3让网页设计提升到下一个高度
2009/08/14 HTML / CSS
html5 touch事件实现触屏页面上下滑动(一)
2016/03/10 HTML / CSS
Vans荷兰官方网站:美国南加州的原创极限运动潮牌
2018/01/23 全球购物
adidas澳大利亚官方网站:adidas Australia
2018/04/15 全球购物
大学生年度自我鉴定
2013/10/31 职场文书
群众路线教育实践活动学习笔记
2014/11/05 职场文书
Java结构型设计模式之组合模式详解
2022/09/23 Java/Android