У меня есть 3 класса, и я запускаю первый класс, объявляю переменную во втором классе и хочу, чтобы 3-й класс мог распечатать эту переменную. У меня есть код ниже, чтобы объяснить это более четко.
from class2 import Class2
class Class1(Class2):
def __init__(self):
self.value1 = 10
self.value2 = 20
def add(self):
self.value3 = self.value1 + self.value2
def multiply(self):
Test.subtract()
if __name__ == '__main__':
Class1 = Class1()
Class1.add()
Class1.Multiply()
Приведенный выше класс вызывает функции во втором классе, а значения используются вызываемыми функциями.
from class3 import Class3
class Class2(Class3):
def e(self):
self.value4 = self.value3 - self.value2
print self.value4
self.string1 = 'Hello'
Class2.printValue()
Class2 = Class2()
Функции 3-го класса вызываются 2-м классом, но значения 2-го класса не передаются в 3-й класс.
class Class3():
def printValue(self):
print self.string1
if __name__ == '__main__':
Class3 = Class3()
Поэтому мой вопрос заключается в том, как получить переменные во втором классе для передачи в 3-й класс, когда я запускаю первый класс в качестве основного сценария?
Спасибо за любую помощь.
Этот скрипт только для примера, в моем скрипте у меня есть 3 файла. Мне нужно начать с 1-го класса в файле, а затем использовать функции 2-го класса, которые, в свою очередь, создают переменную, которую я затем использую при запуске функции в 3-м классе. Но все это нужно выполнить, выполнив первый класс. Все занятия должны быть в отдельных файлах.
Извините за путаницу, спасибо
Я могу сделать это, когда просто использую функции, передав значение через такой параметр, как:
string1 = 'Hello'
printValue(string1)
Тогда это значение может использоваться функцией printValue
во время работы. Я просто не могу заставить его работать с классами, так как передача параметров кажется проблемой из-за self
.