У меня есть 2 python файла: Math1.py, Math2.py
У меня есть глобальная переменная, определенная в Math1.py, которую я могу успешно использовать, и делаю дальнейшие вычисления в файле Math2.py, используя - -> из Math1 import *, только когда я вызываю класс и его метод в соответствующем файле.
Хотя, когда я пытаюсь получить доступ к одной и той же глобальной переменной во втором файле, при попытке запустить обе программы из одного файла, я не могу использовать ее, и это выдает ошибку: глобальная переменная не определена.
Ниже приведены файлы и соответствующий код: (Этот код работает)
Math1.py
время импорта import math
class Math1():
def __init__(self,x,y,z):
self.x=x
self.y=y
self.z=z
def do_add(self):
global add_result
global mult_i
add_result=(self.x+self.y+self.z)
mult_i=self.z
return add_result
C=Math1(1,3,4)
C.do_add()
Math2.py
from Math1 import*
from Math1 import Math1
class Math2(Math1):
def __init__(self):
if mult_i<10:
print("Mult_i is less than 10")
def do_mult(self):
global mult_result
mult_result=add_result*mult_i
print(mult_result)
mult=Math2()
mult.do_mult()
Этот код не работает:
Math1.py
import time
import math
class Math1():
def __init__(self,x,y,z):
self.x=x
self.y=y
self.z=z
def do_add(self):
global add_result
global mult_i
add_result=(self.x+self.y+self.z)
mult_i=self.z
return add_result
##C=Math1(1,3,4)
##C.do_add()
Math2.py
from Math1 import*
from Math1 import Math1
class Math2(Math1):
def __init__(self):
if mult_i<10:
print("Mult_i is less than 10")
def do_mult(self):
global mult_result
mult_result=add_result*mult_i
print(mult_result)
C=Math1(1,3,4)
C.do_add()
mult=Math2()
mult.do_mult()
Ошибка: NameError: global имя 'mult_i' не определено