Piton

Python XML to Dictionary

Python XML to Dictionary

Az XML (Extensible Markup Language) az adatok tárolására használt jelölőnyelv. Nagyon hasznos formátum az adatok tárolására, mert meghatároz egy szabálykészletet, amely lehetővé teszi számunkra az adatok ilyen formátumban történő tárolását, amely egyben gépi is, és ember által is olvasható. Széles körben használják az adatok tárolására. Ez egy HTML típusú jelölőnyelv, mivel azonos típusú felépítéssel rendelkeznek. Az XML azonban nem kínálja a megadott címkéket, de meghatározhatja saját címkéit, és létrehozhatja saját jelölőnyelvét. Az XML dokumentumban tárolt adatok könnyen kinyerhetők és elemezhetők. Ez az oka annak, hogy leggyakrabban webszerverekhez használják. Az XML a kis- és nagybetűk különbözõ nyelv.

A Python sok beépített modullal és funkcióval rendelkezik speciális feladatok elvégzéséhez. Számos beépített adatstruktúrával rendelkezik az adatok tárolására és kezelésére. A szótár az egyik nagyon hasznos beépített adatstruktúra, amelyet az adatok kulcs-érték pár formátumban történő tárolására használnak. Az XML adatokat egyszerűen átalakíthatjuk Python szótárra. A Python biztosítja a xmlodict modul az XML-rel kapcsolatos feladatok elvégzéséhez. Ez a cikk elmagyarázza az XML átalakítását a Python szótárává.

Az xmltodict modul telepítése

Az XML-szótár konvertálásának megkezdése előtt először telepítenünk kell az xmltodict modult. Az xmltodict egyszerűen telepíthető a Python index csomag (pip) használatával. Az xmltodict modul pip használatával történő telepítéséhez hajtsa végre a következő parancsot:

pip install xmltodict

Ha a pip3 rendszert használja, hajtsa végre a következő parancsot az xmltodict modul telepítéséhez:

pip3 install xmltodict

Pár percet vesz igénybe a modul telepítése a rendszerre.

A sikeres telepítés után egy üzenet jelenik meg: „Sikeresen telepítve az xmltodict.”

Ha bármilyen Debian alapú rendszert használ, akkor futtassa a következő parancsot az xmltodict modul telepítéséhez:

sudo apt install python-xmltodict

A fenti parancs a Python2-re vonatkozik. A Python3 verzió esetén futtassa a következő parancsot:

sudo apt install python3-xmltodict

XML szótár konvertálás

Most konvertáljunk egy XML-t Python szótárra. Ehhez először importálnunk kell az xmltodict modult a Python szkriptünkbe. A xmltodict.elemzés () egy beépített függvény, amely az XML-t Python szótárvá konvertálja.

#importing xmltodict modul
importáljon xmltodict
#defining egy xml karakterlánc
xml_data = "" "

FA18-RSE-012

Kamran
Kamran
Kamran

[e-mail védett]
4
MSSE

ASPMI
ASQA
ASPM
Szemantikus web


"" "
#converting xml szótárba
my_dict = xmltodict.elemzés (xml_data)
# a konvertált objektum típusának meghatározása
print (type ("A típus:", my_dict))

Kimenet

A kimenetben látható, hogy az XML-t sikeresen átalakítják szótárvá.

Most hozzáférjünk az adatokhoz a szótár gombjaival. A címkék neve kulcsok, és a címkéken belüli adatok valójában értékek.

#importing xmltodict modul
importáljon xmltodict
#defining egy xml karakterlánc
xml_data = "" "

FA18-RSE-012

Kamran
Sattar
Awaisi

[e-mail védett]
4
MSSE

ASPMI
ASQA
ASPM
Szemantikus web


"" "
#converting xml szótárba
my_dict = xmltodict.elemzés (xml_data)
# a konvertált objektum típusának meghatározása
print ("A típus:", type (my_dict))
# a hallgatói azonosító elérése
nyomtatás (my_dict ['hallgató]] [' id '])
# a tanuló nevének elérése
nyomtatás (my_dict ['hallgató'] ['név'])
# a tanuló keresztnevének elérése
nyomtatás (my_dict ['hallgató'] ['név'] ['keresztnév'])
# a tanuló középső nevének elérése
nyomtatás (my_dict ['hallgató'] ['név'] ['középnév'])
# a tanuló vezetéknevének elérése
nyomtatás (my_dict ['hallgató'] ['név'] ['vezetékNév'])
# a hallgató e-mailjének elérése
nyomtatás (my_dict ['hallgató'] ['e-mail'])
# a hallgatói félév elérése
nyomtatás (my_dict ['hallgató]] [' félév '])
# a tanulói osztály elérése
nyomtatás (my_dict ['hallgató'] ['osztály'])
# a hallgató tantárgy elérése3
nyomtatás (my_dict ['hallgató]] [' tárgyak '] [' sub3 '])

Kimenet

A kimenet azt mutatja, hogy ezekhez az adatokhoz a kulcsokkal sikeresen hozzáférnek.

XML szótárkonverzióvá fájlok segítségével

Az XML adatokat többnyire fájlokban tárolják. Az XML fájlok a .xml kiterjesztés. Most nyissuk meg az XML fájlt, és alakítsuk át az adatokat Python szótárba, és érjük el az értékeket kulcsokkal.

Ez a mi diákunk.xml fájl.

Most írjuk meg a Python szkriptünket a fájl megnyitásához és az XML adatok konvertálásához Python szótárba.

#importálja a modult
importáljon xmltodict
# az xml fájl megnyitása olvasási módban
a nyílt ("diák.xml "," r ") mint xml_obj:
# fedje le az xml adatokat a Python szótárba
my_dict = xmltodict.parse (xml_obj.olvas())
# bezárja a fájlt
xml_obj.Bezárás()
# Hozzáférés a név értékéhez
nyomtatás (my_dict ['hallgató]] [' név '] [' vezetékNév '])
# Hozzáférés az e-mail értékéhez
nyomtatás (my_dict ['hallgató'] ['e-mail'])
# Hozzáférés az osztály értékéhez
nyomtatás (my_dict ['hallgató'] ['osztály'])
# a félév értékének elérése
nyomtatás (my_dict ['hallgató]] [' félév '])
# Hozzáférés a tárgy értékéhez
nyomtatás (my_dict ['hallgató]] [' tárgyak '] [' sub1 '])

Kimenet

Következtetés

Az XML az adatok tárolásának népszerű formátuma. Leggyakrabban a webszerverek és a szoftveralkalmazások közötti adatcserére használják. Az XML adatok konvertálhatók Python szótárká az xmltodict modul segítségével. Ez a cikk számos példával ismerteti az xmltodict modul telepítését és az XML-szótár átalakítását.

OpenTTD vs Simutrans
Saját közlekedési szimuláció létrehozása szórakoztató, pihentető és rendkívül csábító lehet. Ezért meg kell győződnie arról, hogy a lehető legtöbb ját...
OpenTTD bemutató
Az OpenTTD az egyik legnépszerűbb üzleti szimulációs játék. Ebben a játékban létre kell hoznia egy csodálatos szállítási vállalkozást. Azonban kezdete...
SuperTuxKart Linuxhoz
A SuperTuxKart egy nagyszerű cím, amelynek célja, hogy ingyenesen hozza el a Mario Kart élményét Linux rendszerén. Elég kihívást jelentő és szórakozta...