Método estático de Python para la cadena de escape XML que admite comillas

Tengo una cadena que tiene caracteres de escape XML y no de escape, y necesito que sea válida al 100% de XML, por ejemplo:

>>> s = '< <' 

Quiero que esto sea:

 >>> s = '< <' 

He intentado numerosos métodos con, lxml, cgi, etc., pero todos esperan que la cadena de entrada ya no tenga caracteres XML válidos:

 >>> import cgi >>> cgi.escape("< <") '< &lt;' 

o

 >>> from xml.sax.saxutils import escape >>> escape("< <") '< &lt;' 

¿No hay un método estándar para esto ya?

Alguien tiene que haber tenido el mismo problema 🙂

Tu mejor apuesta es escapar, luego volver a escapar:

 >>> from xml.sax.saxutils import escape, unescape >>> unescape("< <") '< <' >>> escape(unescape("< <")) '< <'