python多重继承实例

yipeiwu_com6年前Python基础

本文实例讲述了python多重继承用法,分享给大家供大家参考。具体实现方法如下:

1.mro.py文件如下:

#!/usr/bin/python
# Filename:mro.py
 
class P1:
  def foo(self):
    print 'called P1-foo'
 
class P2:
  def foo(self):
    print 'called P2-foo'
 
  def bar(self):
    print 'called P2-bar'
 
class C1(P1, P2):
  pass
 
class C2(P1, P2):
  def bar(self):
    print 'called C2-bar()'
 
class GC(C1, C2):
  pass

2.执行结果如下:

>>> from mro import *
>>> gc = GC()
>>> gc.foo()
called P1-foo
>>> gc.bar
<bound method GC.bar of <mro.GC instance at 0xb77be2ac>>
>>> gc.bar()
called P2-bar
>>>

3.结论:

方法解释顺序(MRO): 深度优先, 从左至右

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

相关文章

Django中间件拦截未登录url实例详解

1.利用装饰器在视图中拦截未登录的url @login_required(login_url='/user/login/') def homepage(request): pas...

解决python web项目意外关闭,但占用端口的问题

问题描述 因为项目强制关闭,但是服务还在运行,导致重新运行项目时候 提示地址已经使用(端口被占用) /usr/bin/python3.5 python-login-demo/inde...

优化Python代码使其加快作用域内的查找

我将示范微优化(micro optimization)如何提升python代码5%的执行速度。5%!同时也会触怒任何维护你代码的人。 但实际上,这篇文章只是解释一下你偶尔会在标准库或者其...

Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例

本文实例讲述了Python实现读写sqlite3数据库并将统计数据写入Excel的方法。分享给大家供大家参考,具体如下: src = 'F:\\log\\mha-041log\\...

解决python读取几千万行的大表内存问题

Python导数据的时候,需要在一个大表上读取很大的结果集。 如果用传统的方法,Python的内存会爆掉,传统的读取方式默认在内存里缓存下所有行然后再处理,内存容易溢出 解决的方法: 1...