python多重继承实例

yipeiwu_com5年前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程序设计有所帮助。

相关文章

go语言计算两个时间的时间差方法

本文实例讲述了go语言计算两个时间的时间差方法。分享给大家供大家参考。具体分析如下: go语言计算两个时间的时间差,代码很简单,返回1天前、1周前还是1月前的时间 package m...

详细介绍Ruby中的正则表达式

详细介绍Ruby中的正则表达式

正则表达式是一种特殊序列的字符,它通过使用有专门语法的模式来匹配或查找其他字符串或字符串集合。 语法 正则表达式从字面上看是一种介于斜杠之间或介于跟在 %r 后的任意分隔符之间的模式,如...

压缩包密码破解示例分享(类似典破解)

昨天翻硬盘,找到一个好东西,可惜自己加了密码自己不记得了。试了几个常用的没试出来,于是写了这么个小脚本来替我尝试。。呵呵,还真给解出来了。python脚本内容如下,跑跑自己加密的压缩包还...

Python中logging实例讲解

Python中logging实例讲解

logging 的基本用法网上很多,这里就不介绍了。在引入正文之前,先来看一个需求: 假设需要将某功能封装成类库供他人使用,如何处理类库中的日志? 数年前在一个 C# 开发的项目中,我用...

详解Python异常处理中的Finally else的功能

Python使用Try Exception来处理异常机制 若Exception中有Try对应的异常处理,则Try - exception之后的代码将被执行,但若Try - excepti...