Usando cElementTree es posible crear un archivo XML. En el ejemplo siguiente creamos el nodo raíz con la función Element(«root»).
Después creamos un elemento nuevo dentro de root llamado «doc» con la función SubElement.
import xml.etree.cElementTree as ET root = ET.Element("root") doc = ET.SubElement(root, "doc") nodo1 = ET.SubElement(doc, "nodo1", name="nodo") nodo1.text = "Texto de nodo1" ET.SubElement(doc, "nodo2", atributo="algo").text = "texto 2" arbol = ET.ElementTree(root) arbol.write("/ruta/prueba.xml")
Para agregar nodos nuevos usamos nuevamente SubElement con el que obtenemos una referencia al nodo1 en la línea 6 y le asignamos una cadena de texto «Texto de nodo1».
Una vez que terminamos de agregar nodos a nuestro documento XML invocamos a ElementTree que nos devuelve una referencia al documento completo y creamos el archivo de texto con nuestro XML usando la función write que recibe como argumento la ruta donde se creará el archivo XML.
El resultado de Crear un Archivo XML será más o menos el siguiente:
<root><doc><nodo1 name="nodo">Texto de nodo1</nodo1><nodo2 atributo="blah">texto 2</nodo2></doc></root>
Más información en inglés: https://geekole.com/create-xml-file-in-python/
Hola, yo trabajo con la librería pygame que sirve para crear videojuegos pero estoy haciendo un juego muy largo y elaborado que necesita un sistema de guardado para que al cerrar el juego no se pierdan los datos.
Recurrí al xml y creo que todo eso está bien pero tienen una idea específicamente para «guardar progreso» en python?
No se cuantos datos debes guardar, pero quizás en una estructura JSON te sea mas fácil, ya que es mas «convertible» a diccionario, que te da un acceso mas rapido a lo que quieras cambiar.