python - 从另一个类更改变量
问题描述
我试图在没有继承的情况下从另一个类中更改一个变量。
我怎么能做到?
class ClassA:
def __init__(self):
self.modifier = _ClassB()
self.var_a = 5
class _ClassB:
def change_var_a(self):
# change var_a = 7
a = ClassA()
a.modifier.change_var_a()
print(a.var_a)
解决方案
您需要对要修改的实例的引用:
class ClassA:
def __init__(self):
self.modifier = _ClassB(parent=self)
self.var_a = 5
class _ClassB:
def __init__(self, parent: ClassA):
self.parent = parent
def change_var_a(self):
self.parent.var_a = 10
a = ClassA()
a.modifier.change_var_a()
print(a.var_a)
推荐阅读
- event-sourcing - 事件溯源“元流”包含名称、创建、删除等
- android - 如何从一个 Fragment 切换到另一个 Fragment?
- c# - Clarification on C# RegEx syntax
- c# - only 1 record coming instead of multiple records in the model in c#
- python - Connect 4 Python 3 - 声明全局变量
- http - Web 应用程序与 http 服务器的基础知识
- r - 我可以使用列表/数据框中的名称,在 R 脚本中被识别为列表/数据框名称以用于循环函数吗?
- javascript - html2pdf不尊重div的宽度和高度明确设置
- spring - 无法访问 Spring Boot 中的不安全端点
- android - Flutter 应用程序无法在真实设备或模拟器上运行