У меня есть класс Xml
, используемый для изменения объекта xml.etree.ElementTree.ElementTree
:
from xml.etree import ElementTree
class Xml:
def __init__(self, file_path: str):
self.__root = ElementTree.Element()
self.__file = file_path
def __del__(self):
tree = ElementTree.ElementTree(self.__root)
tree.write(self.__file)
, этот код работает нормально (файл XML переписан). Но когда я пытаюсь использовать этот класс в глобальной переменной, он запаниковал:
from typing import Optional
XML: Optional[Xml] = None
def set_xml(file_path):
global XML
XML = Xml('example_file_path')
ошибка нравится:
'NoneType` object ‘XML’ has no attribute 'ElementTree'
Я не знаю, неправильно ли я использую питонglobal или python __del__
метод, пожалуйста, дайте мне несколько советов, спасибо заранее!