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 之编写简单乘法运算题
Feb 27 Python
Python程序中用csv模块来操作csv文件的基本使用教程
Mar 03 Python
浅析Python中的多条件排序实现
Jun 07 Python
Python Web程序部署到Ubuntu服务器上的方法
Feb 22 Python
浅谈Python中的zip()与*zip()函数详解
Feb 24 Python
Python打开文件,将list、numpy数组内容写入txt文件中的方法
Oct 26 Python
flask框架蓝图和子域名配置详解
Jan 25 Python
Python生成器实现简单"生产者消费者"模型代码实例
Mar 27 Python
Python无头爬虫下载文件的实现
Apr 02 Python
python高级特性简介
Aug 13 Python
Django rest framework分页接口实现原理解析
Aug 21 Python
python 发送邮件的四种方法汇总
Dec 02 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批量删除数据库下指定前缀的表以prefix_为例
2014/08/24 PHP
WampServer搭建php环境时遇到的问题汇总
2015/07/23 PHP
JS+CSS实现淡入式焦点图片幻灯切换效果的方法
2015/02/26 Javascript
javascript中的Base64、UTF8编码与解码详解
2015/03/18 Javascript
js上传图片及预览功能实例分析
2015/04/24 Javascript
JS Ajax请求如何防止重复提交
2016/06/13 Javascript
jQuery 实现ajax传入参数含有特殊字符的方法总结
2016/10/17 Javascript
jQuery模拟完美实现经典FLASH导航动画效果【附demo源码下载】
2016/11/09 Javascript
ES6(ECMAScript 6)新特性之模板字符串用法分析
2017/04/01 Javascript
解决vue无法设置滚动位置的问题
2018/10/07 Javascript
vue中引入第三方字体文件的方法示例
2018/12/17 Javascript
使用JavaScript实现网页秒表功能(含开始、暂停、继续、重置功能)
2020/06/05 Javascript
解决vue 使用axios.all()方法发起多个请求控制台报错的问题
2020/11/09 Javascript
[01:19:23]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第二场
2018/04/06 DOTA
python使用正则表达式分析网页中的图片并进行替换的方法
2015/03/26 Python
Python绑定方法与非绑定方法详解
2017/08/18 Python
200 行python 代码实现 2048 游戏
2018/01/12 Python
python+pillow绘制矩阵盖尔圆简单实例
2018/01/16 Python
python docx 中文字体设置的操作方法
2018/05/08 Python
python通过Windows下远程控制Linux系统
2018/06/20 Python
python实现决策树分类
2018/08/30 Python
在Python中将函数作为另一个函数的参数传入并调用的方法
2019/01/22 Python
python使用装饰器作日志处理的方法
2019/07/11 Python
Python企业编码生成系统之主程序模块设计详解
2019/07/26 Python
Pytorch实验常用代码段汇总
2020/11/19 Python
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
伦敦剧院及景点门票:Encore Tickets
2018/07/01 全球购物
以工厂直接定价的传奇性能:Ben Hogan Golf
2019/01/04 全球购物
香港零食网购:上仓胃子
2020/06/08 全球购物
KELLER SPORTS荷兰:在线订购最好的运动产品
2020/10/13 全球购物
机电专业大学生求职信
2013/10/04 职场文书
大二自我鉴定范文
2013/10/05 职场文书
平民服装店创业计划书
2014/01/17 职场文书
办公经费申请报告
2015/05/15 职场文书
大学生如何逃脱“毕业季创业队即散伙”魔咒?
2019/08/19 职场文书
在SQL Server中使用 Try Catch 处理异常的示例详解
2022/07/15 SQL Server