python多重继承例子_Python类继承的例子 python继承与多重继承

本文介绍了Python中的类继承机制,包括单一继承和多重继承。通过实例展示了如何创建派生类,并解释了Python在查找方法时的搜索顺序。同时,文章还提供了Teacher和Student类作为多重继承的示例,展示了如何在子类中调用基类的构造函数和方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python中继承实现方法

派生类继承形式为:

class DerivedClass(BaseClass):

[注意]

[1] Python不会自动调用基类的constructor,要亲自专门调用它。在方法调用之前加上类名前缀,然后把self变量及其他参数传递给它。

[2] Python总是首先查找对应类型的方法,如果它不能在派生类中找到对应的方法,它才开始到基类中查找。

[3] 基类是在派生类定义时,在元组之中指明的。

[4] 如果在继承元组中列了一个以上的类,那么它就被称作多重继承。

python; auto-links:false;">

#! /usr/bin/python

# Filename: inherit.py

# 2010-7-14 wcdj

# www.#

class SchoolMember:

'''''Represents any school member.'''

def __init__(self, name, age):

self.name=name

self.age=age

print '(Initialized SchoolMember:%s)' % self.name

def tell(self):

'''''Tell my details.'''

print 'Name:"%s" Age:"%s"' % (self.name, self.age), # note, this comma

class Teacher(SchoolMember):

'''''Represents a teacher.'''

def __init__(self, name, age, salary):

SchoolMember.__init__(self, name, age)

self.salary=salary

print '(Initialized Teacher:%s)' % self.name

def tell(self):

SchoolMember.tell(self)

print 'Salary:"%d"' % self.salary

class Student(SchoolMember):

'''''Represents a student.'''

def __init__(self, name, age, marks):

SchoolMember.__init__(self, name, age)

self.marks=marks

print '(Initialized Student:%s)' % self.name

def tell(self):

SchoolMember.tell(self)

print 'Marks:"%d"' % self.marks

t=Teacher('Mr. Young', 40, 30000)

s=Student('wcdj', 22, 75)

print # prints a blank line

members=[t, s]

for i in members:

i.tell() # works for both Teachers and Students

#########

# output

#########

>>>

(Initialized SchoolMember:Mr. Young)

(Initialized Teacher:Mr. Young)

(Initialized SchoolMember:wcdj)

(Initialized Student:wcdj)

Name:"Mr. Young" Age:"40" Salary:"30000"

Name:"wcdj" Age:"22" Marks:"75"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值