У меня есть файл, который содержит определения классов и функции, которые мне нужно использовать в моем главном файле, чтобы сделать текст чище. Однако у меня проблема с импортированными глобальными переменными.
В SO и других ресурсах содержится много информации о том, как сделать переменные функции глобальными в одном и том же коде или как использовать глобальные переменные из импортированного файла. Однако нет информации о том, как получить доступ к переменной из импортированного файла, если переменная принадлежит функции, принадлежащей классу.
Буду признателен за любую помощь в том, как это сделать или почему это невозможно сделать. Пожалуйста, пропустите лекцию об опасности использования глобальных переменных, как эта, поскольку моя ситуация требует такого использования.
Редактировать: Извините за отсутствие примера в исходном сообщении. Это мой первый. Ниже приведен пример того, чего я пытаюсь достичь.
Допустим, у меня есть файл classes.py, который содержит:
class HelixTools():
def calc_angle(v1, v2):
v1_mag = np.linalg.norm(v1)
v2_mag = np.linalg.norm(v2)
global v1_v2_dot
v1_v2_dot = np.dot(v1,v2)
return v1_v2_dot
Затем в моем основном текстовом файле я делаю:
from classes import HelixTools
ht = HelixTools()
v1 = some vector
v2 = some other vector
ht.calc_angle(v1,v2)
print(v1_v2_dot)
Результат "v1_v2_dot" не определен. Мне нужно v1_v2_dot, чтобы использовать его в качестве ввода другой функции.