原文: https://pythonspot.com/inheritance/

类可以继承其他类的功能。 如果使用从超类继承的类创建对象,则该对象将包含该类和超类的方法。 对于超类和从超类继承的类的变量也是如此。

与其他流行的编程语言不同,Python 支持从多个类继承。

介绍

我们定义一个名为User的基本类:

  1. class User:
  2. name = ""
  3. def __init__(self, name):
  4. self.name = name
  5. def printName(self):
  6. print("Name = " + self.name)
  7. brian = User("brian")
  8. brian.printName()

这将创建一个称为 brian 的实例,并输出其给定名称。 我们创建另一个称为 Programmer 的类。

  1. class Programmer(User):
  2. def __init__(self, name):
  3. self.name = name
  4. def doPython(self):
  5. print("Programming Python")

除了参数中提供了User之外,这看起来非常像标准类。 这意味着可以在Programmer类中访问User类的所有功能。

继承示例

Python 继承的完整示例:

  1. class User:
  2. name = ""
  3. def __init__(self, name):
  4. self.name = name
  5. def printName(self):
  6. print("Name = " + self.name)
  7. class Programmer(User):
  8. def __init__(self, name):
  9. self.name = name
  10. def doPython(self):
  11. print("Programming Python")
  12. brian = User("brian")
  13. brian.printName()
  14. diana = Programmer("Diana")
  15. diana.printName()
  16. diana.doPython()

输出:

  1. Name = brian
  2. Name = Diana
  3. Programming Python

BrianUser的实例,只能访问方法printNameDianaProgrammer的一个实例,该类是继承自User的类,并且可以访问ProgrammerUser中的方法。

下载练习