Python 将类拆分为需要访问类实例的文件
我有一个例子,展示了两个类,它们的方法需要与另一个类实例联系。如何将这些类拆分为文件Python 将类拆分为需要访问类实例的文件,python,class,oop,Python,Class,Oop,我有一个例子,展示了两个类,它们的方法需要与另一个类实例联系。如何将这些类拆分为文件 A类: 定义初始化(self,name): self.name=名称 def do_某事(自我): 打印(b.名称) B类: 定义初始化(self,name): self.name=名称 def do_某事(自我): 印刷品(姓名) a=a(“a”) b=b(“b”) a、 做某事 我建议您将代码分为以下模块: 模块a.py class A: def __init__(self, name):
A类:
定义初始化(self,name):
self.name=名称
def do_某事(自我):
打印(b.名称)
B类:
定义初始化(self,name):
self.name=名称
def do_某事(自我):
印刷品(姓名)
a=a(“a”)
b=b(“b”)
a、 做某事
我建议您将代码分为以下模块:
模块a.py
class A:
def __init__(self, name):
self.name = name
def do_something(self, b):
print(b.name)
class B:
def __init__(self, name):
self.name = name
def do_something(self, a):
print(a.name)
from module_a import A
from module_b import B
a = A("A")
b = B("B")
a.do_something(b) # output: B
模块b.py
class A:
def __init__(self, name):
self.name = name
def do_something(self, b):
print(b.name)
class B:
def __init__(self, name):
self.name = name
def do_something(self, a):
print(a.name)
from module_a import A
from module_b import B
a = A("A")
b = B("B")
a.do_something(b) # output: B
main.py
class A:
def __init__(self, name):
self.name = name
def do_something(self, b):
print(b.name)
class B:
def __init__(self, name):
self.name = name
def do_something(self, a):
print(a.name)
from module_a import A
from module_b import B
a = A("A")
b = B("B")
a.do_something(b) # output: B
为什么这些类需要全局访问彼此的实例?这会破坏类的好处,因为这意味着每个类只能有一个实例。
A
和B
必须满足哪些约束条件?@MisterMiyagi这个例子非常简单。我有一个很大的文件,里面有很多类是PyQt5窗口,必须连接。如何连接?每件事都与每件事联系在一起吗?新窗口会出现并消失吗?似乎每个连接的窗口都应该明确地告诉对方,而不是假设每个其他窗口都是全局的。对不起。。。我把我的问题简单化了。解释起来相当复杂。我已经用Gabb的回答解决了,谢谢!