XML significa Lenguaje de marcado extensible . XML fue diseñado para ser autodescriptivo y para almacenar y transportar datos. Las etiquetas XML se utilizan para identificar, almacenar y organizar los datos. El componente básico de un documento XML se define mediante etiquetas. Un elemento tiene una etiqueta de inicio y una etiqueta de finalización. Todos los elementos en un XML están contenidos en un elemento más externo llamado elemento raíz.
Ejemplo:
<geeksforgeeks> <course>DSA</course> <price>2499/-</price> </geeksforgeeks>
En el ejemplo anterior, geeksforgeeks es el elemento raíz y <curso>, <precio>, <precio> son los elementos.
Ahora, veamos cómo convertir un diccionario en XML:
para convertir un diccionario en XML en Python, usaremos la biblioteca xml.etree.ElementTree . La biblioteca xml.etree.ElementTree generalmente se usa para analizar y también se utiliza para crear documentos XML. La clase ElementTree se emplea para envolver una estructura de componente y convertirla desde y hacia XML. El resultado de esta conversión es un Elemento . Para E/S, es fácil convertir esto en una string de bytes usando la función tostring() en xml.etree.ElementTree.
xml.etree.ElementTree.Element() Clase:
Esta clase Element define la interfaz Element y proporciona una implementación de referencia de esta interfaz.
Sintaxis: elemento (etiqueta, atributo = {}, ** extra)
Parámetro:
- etiqueta: Esta es una string que identifica qué tipo de datos representa este elemento.
- attrib: este es un diccionario opcional que contiene atributos de elementos.
- **extra: contiene atributos adicionales, proporcionados como argumentos de palabras clave.
Retorno: Objeto de elemento
xml.etree.ElementTree.tostring() Función:
Esta función genera una representación de string de un elemento XML.
Sintaxis: tostring(elemento)
Parámetro: elemento XML
Retorno: representación de string de un elemento XML
Método ElementObject.set() :
Este método Establece la clave de atributo en el elemento al valor.
Sintaxis: set(clave, valor)
Parámetro:
- clave: representa el atributo.
- valor: representa el valor del atributo.
Retorno: Ninguno
Ahora, veamos el programa Python para convertir un diccionario en XML:
Python3
# import Element class, tostring function # from xml.etree.ElementTree library from xml.etree.ElementTree import Element,tostring # define a function to # convert a simple dictionary # of key/value pairs into XML def dict_to_xml(tag, d): elem = Element(tag) for key, val in d.items(): # create an Element # class object child = Element(key) child.text = str(val) elem.append(child) return elem # Driver Program s = { 'name': 'geeksforgeeks', 'city': 'noida', 'stock': 920 } # e stores the element instance e = dict_to_xml('company', s) # Element instance is different # every time you run the code print(e) # converting into a byte string print(tostring(e)) # We can attach attributes # to an element using # set() method e.set('_id','1000') print(tostring(e))
Producción:
<Elemento ‘compañía’ en 0x7f411a9bd048>
b'<compañía><nombre>geeksforgeeks</nombre><ciudad>noida</ciudad><stock>920</stock></compañía>’
b'<compañía _id=”1000 ″><name>geeksforgeeks</name><city>noida</city><stock>920</stock></company>’
Publicación traducida automáticamente
Artículo escrito por ashishguru9803 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA