Пытаюсь понять эту ошибку в моем классе "Переменная".
Я надеялся сохранить sre.SRE_Pattern в моем классе "Variable".Я только начал копировать класс Variable и заметил, что он вызывает изменение всех экземпляров моего класса Variable.Теперь я понимаю, что мне нужно глубоко копировать этот класс, но теперь я сталкиваюсь с «TypeError: не могу копировать этот объект шаблона».Конечно, я могу сохранить шаблон в виде текстовой строки, но остальная часть моего кода уже ожидает скомпилированный шаблон!Что было бы лучшим способом скопировать мой класс Variable с объектом шаблона?
import re
from copy import deepcopy
class VariableWithRE(object):
"general variable class"
def __init__(self,name,regexTarget,type):
self.name = name
self.regexTarget = re.compile(regexTarget, re.U|re.M)
self.type = type
class VariableWithoutRE(object):
"general variable class"
def __init__(self,name,regexTarget,type):
self.name = name
self.regexTarget = regexTarget
self.type = type
if __name__ == "__main__":
myVariable = VariableWithoutRE("myName","myRegexSearch","myType")
myVariableCopy = deepcopy(myVariable)
myVariable = VariableWithRE("myName","myRegexSearch","myType")
myVariableCopy = deepcopy(myVariable)