这在我的班级档案里。在
class Edifice:
def __init__(self,storeys,area):
self.__storeys = storeys
self.__area = area
def show_info(self):
print('Storeys:',self.__storeys,', floor area:',self.__area)
class Home(Edifice):
def __init__(self, storeys, area, bedrooms):
super().__init__(storeys, area)
self.__bedrooms = bedrooms
def show_info(self):
super(Home, self).show_info()
print("For human habitation: ", self.__bedrooms, "bedrooms")
在我的可执行文件中:
^{pr2}$从可执行文件中,我需要创建另一个Home show_info()方法的实例,该方法具有不同的文本输出。在
您需要使用类似于:
要实际重写该方法,使用super调用父级方法非常简单:
^{pr2}$如果使用python2,语法略有不同,还应继承from object以支持新的样式类:
不确定您所说的可执行文件是什么意思,但您可以在文件中使用
if __name__==__main__
,并且只有在运行该文件时才会执行代码:如果您只想导入并运行另一个
.py
文件中的代码:无论哪个模块都必须在同一个目录中或在您的
PYTHONPATH
中,有几种不同的方法可以添加到您的路径中,本文讨论了question.对于您的编辑,我将使消息成为一个属性,并在第二个实例中更改它:
然后:
输出:
无需损坏,它就简单得多:
我们只需设置实例中的全部消息:
你已经很接近了。这里的主要内容是记住在父类上调用
show_info
,然后在重写show_info
声明的同时添加您的信息。在我假设您使用的是python3,因此下面是python3语法。这也适用于python2;请记住,父类将打印元组而不是字符串,除非导入
print_function
,如from __future__ import print_function
。在相关问题 更多 >
编程相关推荐