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数据库的实现方法(2则示例)
Jan 06 Python
Python数据库的连接实现方法与注意事项
Feb 27 Python
PyQt 线程类 QThread使用详解
Jul 16 Python
django 常用orm操作详解
Sep 13 Python
Python使用SQLite和Excel操作进行数据分析
Jan 20 Python
使用pandas对矢量化数据进行替换处理的方法
Apr 11 Python
详解python中的hashlib模块的使用
Apr 22 Python
numpy中的meshgrid函数的使用
Jul 31 Python
python3调用windows dos命令的例子
Aug 14 Python
python 中不同包 类 方法 之间的调用详解
Mar 09 Python
Python函数递归调用实现原理实例解析
Aug 11 Python
解决Python import .pyd 可能遇到路径的问题
Mar 04 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
ubuntu 编译安装php 5.3.3+memcache的方法
2010/08/05 PHP
php打造属于自己的MVC框架
2012/03/07 PHP
PHP过滤黑名单关键字的方法
2014/12/01 PHP
php随机获取金山词霸每日一句的方法
2015/07/09 PHP
PHP日期和时间函数的使用示例详解
2020/08/06 PHP
Google Suggest ;-) 基于js的动态下拉菜单
2006/10/11 Javascript
动态添加js事件实现代码
2009/03/12 Javascript
一些有用的JavaScript和jQuery的片段分享
2011/08/23 Javascript
JS 新增Cookie 取cookie值 删除cookie 举例详解
2014/10/10 Javascript
jQuery实现三级联动效果
2017/03/02 Javascript
基于jquery实现多选下拉列表
2017/08/02 jQuery
使用JS组件实现带ToolTip验证框的实例代码
2017/08/23 Javascript
webstorm中配置nodejs环境及npm的实例
2018/05/15 NodeJs
AngularJS自定义表单验证功能实例详解
2018/08/24 Javascript
React项目动态设置title标题的方法示例
2018/09/26 Javascript
vue的列表交错过渡实现代码示例
2019/05/05 Javascript
vue实现从外部修改组件内部的变量的值
2020/07/30 Javascript
解决vuecli3中img src 的引入问题
2020/08/04 Javascript
[02:23]2016国际邀请赛中国区预选赛wings晋级之路
2016/06/29 DOTA
[48:54]VGJ.T vs infamous Supermajor小组赛D组败者组第一轮 BO3 第二场 6.3
2018/06/04 DOTA
Python 调用VC++的动态链接库(DLL)
2008/09/06 Python
Python中的单下划线和双下划线使用场景详解
2019/09/09 Python
python实现自动化报表功能(Oracle/plsql/Excel/多线程)
2019/12/02 Python
Pytorch之卷积层的使用详解
2019/12/31 Python
Python通过Pillow实现图片对比
2020/04/29 Python
css3媒体查询中device-width和width的区别详解
2020/03/27 HTML / CSS
高考自主招生自荐信
2013/10/20 职场文书
电脑租赁公司创业计划书
2014/01/08 职场文书
《雨霖铃》听课反思
2014/02/13 职场文书
《老山界》教学反思
2014/04/08 职场文书
李开复演讲稿
2014/05/24 职场文书
“九一八事变纪念日”国旗下讲话稿
2014/09/14 职场文书
商业用房租赁协议书
2014/10/13 职场文书
中小学教师继续教育心得体会
2016/01/19 职场文书
《文化苦旅》读后感:阅读,让人诗意地栖居在大地上
2019/12/24 职场文书
Golang 对es的操作实例
2022/04/20 Golang