我是新来的。 我试着写一个简单的身份证阅读器和编辑器。 我使用tkinter和Character类创建了一个窗口类,该类读取卡片并显示卡片并允许编辑。 我简化了代码并删除了许多部分。因为任何东西都是有效的,但我找不到一种方法将两个实例的属性从一个引用到另一个。 我想把两个班分开。我知道可以将窗口类属性继承给角色。但我不想要。你知道吗
import tkinter
class CreateWindow :
def __init__(self, width):
self.width=width
self.myCharacter=None
self.CharacterLoaded=False
self.CreateChar()
def CreateChar (self):
self.myCharacter=Character("George")
def CheckMyList (self):
print (CharacterLoaded)
for i in self.myCharacter.Mylist:
print(i)
class Character :
def __init__(self, name):
self.name = name
self.Mylist=[2,3,4,5,6]
print ("Character created")
MainWindow.CharacterLoaded=True
MainWindow.CheckMyList()
MainWindow=CreateWindow(600)
错误: 名称错误:未定义名称“MainWindow” 创建的角色
MainWindow是CreateWindow类的一个实例,在整个会话期间它将只作为一个实例。但每个文件都将在MainWindow类中创建一个Character类的新实例。你知道吗
如何使用这种交叉引用?你知道吗
如果我理解正确,就不需要将
Character
实例放在MainWindow
中。你知道吗在应用程序和其他模块中有一个全局
MainWindow
实例,可以执行以下操作:另一个模块:
因此
CheckMyList
将如下所示:或者,反之亦然,它可以是
Character
类方法,您将把窗口实例传递给它。你知道吗旁注:查看python样式指南(https://www.python.org/dev/peps/pep-0008/),格式化python代码的方法在python中非常少见。你知道吗
相关问题 更多 >
编程相关推荐