网站建设书 模板下载,wordpress 4.5.2 中文,云南手机网站建设公司,宜昌建网站Python 继承
继承允许我们定义继承另一个类的所有方法和属性的类。
父类是继承的类#xff0c;也称为基类。
子类是从另一个类继承的类#xff0c;也称为派生类。
创建父类
任何类都可以是父类#xff0c;因此语法与创建任何其他类相同#xff1a;
实例
创建一个名为…Python 继承
继承允许我们定义继承另一个类的所有方法和属性的类。
父类是继承的类也称为基类。
子类是从另一个类继承的类也称为派生类。
创建父类
任何类都可以是父类因此语法与创建任何其他类相同
实例
创建一个名为 Person 的类其中包含 firstname 和 lastname 属性以及 printname 方法
class Person:def __init__(self, fname, lname):self.firstname fnameself.lastname lname
# Python学习交流裙279199867def printname(self):print(self.firstname, self.lastname)# 使用 Person 来创建对象然后执行 printname 方法x Person(Bill, Gates)
x.printname()运行实例
python_inheritance_parent.py
Bill Gates创建子类
要创建从其他类继承功能的类请在创建子类时将父类作为参数发送
实例
创建一个名为 Student 的类它将从 Person 类继承属性和方法
class Student(Person):pass注释如果您不想向该类添加任何其他属性或方法请使用 pass 关键字。
现在Student 类拥有与 Person 类相同的属性和方法。
实例
使用 Student 类创建一个对象然后执行 printname 方法
x Student(Elon, Musk)
x.printname()运行实例
python_inheritance_child.py
Elon Musk添加 init() 函数
到目前为止我们已经创建了一个子类它继承了父类的属性和方法。
我们想要把 init() 函数添加到子类而不是 pass 关键字。
注释每次使用类创建新对象时都会自动调用 init() 函数。
实例
为 Student 类添加 init() 函数
class Student(Person):def __init__(self, fname, lname):# 添加属性等当您添加 init() 函数时子类将不再继承父的 init() 函数。
注释子的 init() 函数会覆盖对父的 init() 函数的继承。
如需保持父的 init() 函数的继承请添加对父的 init() 函数的调用
实例
class Student(Person):def __init__(self, fname, lname):Person.__init__(self, fname, lname)运行实例
python_inheritance_init.py
Elon Musk现在我们已经成功添加了 init() 函数并保留了父类的继承我们准备好在 init() 函数中添加功能了。
使用 super() 函数
Python 还有一个 super() 函数它会使子类从其父继承所有方法和属性
实例
class Student(Person):def __init__(self, fname, lname):super().__init__(fname, lname)运行实例
python_inheritance_super.py
Elon Musk通过使用 super() 函数您不必使用父元素的名称它将自动从其父元素继承方法和属性。
添加属性
实例
把名为 graduationyear 的属性添加到 Student 类
class Student(Person):def __init__(self, fname, lname):super().__init__(fname, lname)self.graduationyear 2019运行实例
python_inheritance_add_prop_1.py
2019在这例子中2019 年应该是一个变量并在创建 student 对象时传递到 Student 类。为此请在 init() 函数中添加另一个参数
实例
添加 year 参数并在创建对象时传递正确的年份
class Student(Person):def __init__(self, fname, lname, year):super().__init__(fname, lname)self.graduationyear yearx Student(Elon, Musk, 2019)运行实例
python_inheritance_add_prop_2.py
2019添加方法
实例
把名为 welcome 的方法添加到 Student 类
class Student(Person):def __init__(self, fname, lname, year):super().__init__(fname, lname)self.graduationyear yeardef welcome(self):print(Welcome, self.firstname, self.lastname, to the class of, self.graduationyear)运行实例
python_inheritance_add_method.py
Welcome Elon Musk to the class of 2019提示如果您在子类中添加一个与父类中的函数同名的方法则将覆盖父方法的继承。