Если вы хотите, чтобы он был включен в текст, хорошо, что он экранирован.
Каждый pareser xml будет обратно экранировать текст.
Если вы хотите использовать его в качестве элементов XML, вы не можете создавать их с помощью put_text, но нужно создать дерево таким образом
dataNode=xmlDoc.createElement("data")
idNode=xmlDoc.createElement("id")
textNode=xmlDoc.createTextNode("17")
idNode.appendChild(textNode)
nameNode=xmlDoc.createElement("name")
textNode=xmlDoc.createTextNode("Uday")
nameNode.appendChild(textNode)
...
dataNode.appendChild(idNode)
dataNode.appendChild(nameNode)
...
parentNode.appendChild(dataNode)
что может выглядеть лучше, если вы смотрите глазами и хотите, чтобы текст был записан в файл, вы можете использовать раздел cdata.
newCDATA=xmlDoc.createCDATASection("<data><id>17</id>...</data>")
parentNode.appendChild(newCDATA)