我有一个代码:
class read:
a = 0
c = write.c
def get_num():
a = 6
return a
class write:
c = 0
a = read.get_num()
def do_num(self):
b = read.get_num()
self.c = 10
return b
print(write.c)
问题:
- 如何获取
print(write.c)
的解决方案最后10
对于c
。 - 如何创建变量
c
排队3
等于c = 0
上课write
- 如何创建变量
c
排队3
等于c = 10
上课write
最佳答案
do_num()
需要设置write.c
而不是self.c
,以便它设置类属性而不是实例属性。并且您需要调用no_num()
。
class write:
c = 0
a = read.get_num()
def do_num(self):
b = read.get_num()
write.c = 10
return b
w = write()
w.do_num()
print(write.c)
- 您需要按其他顺序定义类。在定义类之前,您无法访问
write.c
。
class write:
c = 0
a = read.get_num()
def do_num(self):
b = read.get_num()
write.c = 10
return b
class read:
a = 0
c = write.c
def get_num():
a = 6
return a
- 您需要将
read.c
设为一个类属性,以便在使用时读取write.c
的值。请参阅How to make a class property?了解如何定义类属性。
关于python - 如何从另一个类继承变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59726135/