


Detailed introduction to xml of python serialization function
This article mainly introduces the xml of Python serialization function in detail, which has certain reference value. Interested friends can refer to it.
<diva_list> <diva name="hamasaki ayumi"> <state flop="yes">1</state> <year>1978</year> <album_sales_volume>27804358</album_sales_volume> <album name="A song for xx" sn="1st"/> <album name="LOVEppears" sn="2nd"/> </diva> <diva name="koda kumi"> <state flop="yes">2</state> <year>1982</year> <album_sales_volume>8273371</album_sales_volume> <album name="affection" sn="1st"/> <album name="grow into one" sn="2nd"/> </diva> </diva_list>
The above is an example of an xml text. If you want To process xml text, you need to import a module.
import xml.etree.ElementTree as ET
#Because the name of the xml module is too long, I used as to give it an alias, called ET.
ET.parse() reads xml text directly from the file and parses the xml text into an xml tree object.
tree = ET.parse("diva.xml")
Get the root node of the xml tree.
root = tree.getroot()
Get the label (name) of the root node.
root.tag
#Traverse xml document
for child in root:
print(child.tag, child.attrib)
for i in child:
print(i.tag,i.text)
Attention! If you want to get the child nodes under the xml text, you must get it through the root node. Add .tag after any node to get the tag name in the node. Add .text to any node to get the content contained in each node. , attrib can get the attributes that exist in the label in the node.
#Get the text content in the album_sales_volume label of each child node.
for i in root.iter("album_sales_volume"):
print i.text
#If you want to get the attributes in the label, directly change text to attrib That’s it.
Modification:
for node in root.iter('year'):
new_year = int(node.text) + 1
node. text = str(new_year) #Modify content
node.set("flop","no") #Modify label attributes.
tree.write("xmltest.xml")
Delete:
for country in root.findall('country'):
rank = int(country.find('rank').text)
if rank > 50:
root.remove(country)
tree.write('output. xml')
root.findall() is used to search starting from the root node and find the child node with the specified name.
root.remove() is used to delete a node.
Generate xml text.
import xml.etree.ElementTree as ET
new_xml = ET.Element("namelist")
name = ET.SubElement(new_xml,"name",attrib= {"enrolled":"yes"})
age = ET.SubElement(name,"age",attrib={"checked":"no"})
sex = ET. SubElement(name,"sex")
sex.text = '33'
name2 = ET.SubElement(new_xml,"name",attrib={"enrolled":"no"} )
age = ET.SubElement(name2,"age")
age.text = '19'
et = ET.ElementTree(new_xml) #Generate document object
et.write("test.xml", encoding="utf-8",xml_declaration=True)
ET.dump(new_xml) #Print the generated format
The above is the detailed content of Detailed introduction to xml of python serialization function. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Solution to permission issues when viewing Python version in Linux terminal When you try to view Python version in Linux terminal, enter python...

When using Python's pandas library, how to copy whole columns between two DataFrames with different structures is a common problem. Suppose we have two Dats...

Getting started with Python: Hourglass Graphic Drawing and Input Verification This article will solve the variable definition problem encountered by a Python novice in the hourglass Graphic Drawing Program. Code...

Choice of Python Cross-platform desktop application development library Many Python developers want to develop desktop applications that can run on both Windows and Linux systems...

Many developers rely on PyPI (PythonPackageIndex)...

Data Conversion and Statistics: Efficient Processing of Large Data Sets This article will introduce in detail how to convert a data list containing product information to another containing...

Alternative usage of Python parameter annotations In Python programming, parameter annotations are a very useful function that can help developers better understand and use functions...

In Python, how to dynamically create an object through a string and call its methods? This is a common programming requirement, especially if it needs to be configured or run...
