【发布时间】:2020-10-23 13:55:05
【问题描述】:
我无法弄清楚如何从另一个类创建对象的实例。
下面我给出了一个例子,我们有一个 MainWindow 类,它代表例如网络浏览器。然后,还有另一个类叫做MainWindowTab。
MainWindow 使用一个名为“tab1”的选项卡进行初始化,但我希望能够添加另一个选项卡并将其称为“tab2”(然后添加“tab3”和“tab4”等),但我命名有问题,如下所示。
此外,任何与选项卡对象的析构函数相关的技巧如果不像看起来那么简单,那就太好了。
任何帮助都会很棒,谢谢
代码
class MainWindow(object):
def __init__(self):
self.tab = MainWindowTab(0)
self.tabList = [self.tab]
def addTab(self, num):
newName = "tab"+str(len(self.tabList)+1)
# How to add a new Tab with this name? Below will simply name the new tab as literally 'newName'
# self.newName = MainWindowTab(10)
class MainWindowTab(object):
def __init__(self, num):
self.posn = num
【问题讨论】:
-
IDK 如果这可以 100% 确定,但我相信您可以在添加选项卡功能中添加以下内容:self.tabList.append(MainWindowTab(num))
-
我有点困惑。你到底想做什么?看来你应该只创建一个
MainWindowTab的新实例并将其添加到self.tabList,不是吗?
标签: python python-3.x class oop object