XML (Extensible Markup Language) je značkovací jazyk, který se používá k ukládání dat. Jedná se o velmi užitečný formát pro ukládání dat, protože definuje sadu pravidel, která nám umožňují ukládat data v takovém formátu, který je strojově i čitelně čitelný. Je široce používán k ukládání dat. Jedná se o značkovací jazyk typu HTML, protože mají stejný typ struktury. XML však nenabízí definované značky, ale můžete definovat vlastní značky a vytvořit si vlastní značkovací jazyk. Data uložená v dokumentu XML lze snadno extrahovat a analyzovat. Z tohoto důvodu se nejčastěji používá pro webové servery. XML rozlišuje velká a malá písmena.
Python je dodáván s mnoha integrovanými moduly a funkcemi pro provádění specializovaných úkolů. Má mnoho předdefinovaných datových struktur pro ukládání a správu dat. Slovník je jednou z velmi užitečných integrovaných datových struktur, které se používají k ukládání dat ve formátu párů klíč – hodnota. Můžeme jednoduše převést data XML do slovníku Pythonu. Python poskytuje xmlodict modul k provádění úkolů souvisejících s XML. Tento článek vysvětluje převod XML do slovníku v Pythonu.
Instalace modulu xmltodict
Než začneme s převodem XML na slovník, nejdříve si musíme nainstalovat modul xmltodict. Xmltodict lze snadno nainstalovat pomocí indexového balíčku Pythonu (pip). Proveďte následující příkaz k instalaci modulu xmltodict pomocí pipu:
pip install xmltodictPokud používáte pip3, proveďte následující příkaz k instalaci modulu xmltodict:
pip3 nainstalujte xmltodictInstalace modulu do vašeho systému bude trvat několik minut.
Po úspěšné instalaci se zobrazí zpráva „Úspěšně nainstalován xmltodict.“
Pokud používáte jakýkoli systém založený na Debianu, spusťte následující příkaz a nainstalujte modul xmltodict:
sudo apt nainstalovat python-xmltodictVýše uvedený příkaz je pro Python2. V případě verze Python3 spusťte následující příkaz:
sudo apt nainstalovat python3-xmltodict
Převod XML do slovníku
Nyní převeďme slovník XML na slovník Python. Z tohoto důvodu musíme nejprve importovat modul xmltodict do našeho skriptu Pythonu. The xmltodict.analyzovat () je vestavěná funkce, která převádí XML do slovníku Python.
#importování modulu xmltodictimportovat xmltodict
# definování řetězce XML
xml_data = "" "
„“ „
# převod XML do slovníku
my_dict = xmltodict.analyzovat (xml_data)
# určení typu převedeného objektu
print (type ("The type is:", my_dict))
Výstup
Na výstupu je vidět, že XML je úspěšně převeden do slovníku.
Nyní pojďme přistupovat k datům pomocí slovníkových kláves. Název tagů jsou klíče a data uvnitř tagů jsou ve skutečnosti hodnota.
#importování modulu xmltodictimportovat xmltodict
# definování řetězce XML
xml_data = "" "
„“ „
# převod XML do slovníku
my_dict = xmltodict.analyzovat (xml_data)
# určení typu převedeného objektu
print ("Typ je:", typ (my_dict))
# přístup k ID studenta
print (my_dict ['student'] ['id'])
# přístup ke jménu studenta
print (my_dict ['student'] ['jméno'])
# přístup k křestnímu jménu studenta
print (my_dict ['student'] ['jméno'] ['jméno'])
#přístup k prostřednímu jménu studenta
print (my_dict ['student'] ['jméno'] ['prostřední jméno'])
#přístup k příjmení studenta
print (my_dict ['student'] ['jméno'] ['příjmení'])
# přístup k e-mailu studenta
print (my_dict ['student'] ['email'])
#přístup ke studentskému semestru
tisk (my_dict ['student'] ['semestr'])
# přístup ke třídě studentů
print (my_dict ['student'] ['třída'])
# přístup ke studentskému předmětu3
tisk (my_dict ['student'] ['předměty'] ['pod3'])
Výstup
Výstup ukazuje, že k jejich datům je úspěšně přistupováno pomocí kláves.
Převod XML na slovník pomocí souborů
Data XML jsou většinou uložena v souborech. Soubory XML jsou vytvářeny pomocí .xml přípona. Nyní otevřete soubor XML a převeďte data do slovníku Pythonu a přistupujte k hodnotám pomocí klíčů.
Toto je náš student.xml soubor.
Nyní napíšeme náš skript v Pythonu, abychom otevřeli soubor a převedli data XML do slovníku Pythonu.
#importování moduluimportovat xmltodict
# otevření souboru XML v režimu čtení
s otevřeným ("student.xml "," r ") jako xml_obj:
#coverting the xml data to Python dictionary
my_dict = xmltodict.analyzovat (xml_obj.číst())
# uzavření souboru
xml_obj.zavřít()
#accessing the name value
print (my_dict ['student'] ['jméno'] ['příjmení'])
# přístup k hodnotě e-mailu
print (my_dict ['student'] ['email'])
# přístup k hodnotě třídy
print (my_dict ['student'] ['třída'])
# přístup k hodnotě semestru
tisk (my_dict ['student'] ['semestr'])
# přístup k hodnotě předmětu
tisk (my_dict ['student'] ['předměty'] ['pod1'])
Výstup
Závěr
XML je populární formát pro ukládání dat. Nejběžněji se používá k výměně dat mezi webovými servery a softwarovými aplikacemi. Data XML lze převést do pythonovského slovníku pomocí modulu xmltodict. Tento článek vysvětluje instalaci modulu xmltodict a převod XML na slovník pomocí několika příkladů.