При использовании модуля xml.etree python, как я могу избежать специальных символов xml, таких как '>' и '<' для использования внутри тега? Должен ли я делать это вручную? Есть ли у etree метод или kwarg, которых я не хватает?Python xml.etree escaping
Рассмотрим:
In [1]: from xml.etree.ElementTree import Element, SubElement, tostring
In [2]: root = Element('filter')
In [3]: root.set('type', 'test')
In [4]: for op in ['<', '>', '=']:
...: sub_elem = SubElement(root, op)
...: child = Element('a')
...: child.text = 'b'
...: sub_elem.append(child)
...:
In [5]: tostring(root)
Out[5]: '<filter type="test"><<><a>b</a></<><>><a>b</a></>><=><a>b</a></=></filter>'
Где я хотел бы видеть разделы как:
<<><a>b</a></<>
Почему вы не используете 'for op in ['<', '>', '=']:'? – furas
'<<> b<>' очень странная разметка. Вы действительно этого хотите? Это не правильно сформированный XML, это точно. – mzjn