Python中xmltodict对xml的操作方式
更新时间:2023年03月14日 09:29:33 作者:程序猿-张益达
这篇文章主要介绍了Python中xmltodict对xml的操作方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
Python xmltodict对xml的操作
xmltodict是另一个简易的库,它致力于将XML变得像JSON.
下面是一个简单的示例XML文件:
<?xml version="1.0"?> <mydocument has="an attribute"> <and> <many>elements</many> <many>more elements</many> </and> <plus a="complex"> element as well </plus> </mydocument>
这是第三方包,在处理前先用pip来安装
pip install xmltodict
可以像下面这样访问里面的元素,属性及值:
import xmltodict
with open("test.xml") as fd: # 将XML文件装载到dict里面
doc = xmltodict.parse(fd.read())
print(doc["mydocument"]["@has"]) # an attribute
print(doc["mydocument"]["and"]) # OrderedDict([(u'many', [u'elements', u'more elements'])])
print(doc["mydocument"]["and"]["many"]) # [u'elements', u'more elements']
print(doc["mydocument"]["plus"]["@a"]) # complex
print(doc["mydocument"]["plus"]["#text"]) # element as well
xmltodict 也有unparse函数让您可以转回XML。该函数有一个streaming模式适合用来 处理不能放入内存的文件,它还支持命名空间
Python XML解析,xmltodict模块
安装xmltodict: pip3 install xmltodict
demo.py(xml字符串解析成类字典):
# coding:utf-8 import xmltodict # 导入 # XML格式字符串 xml_str = """ <xml> <Name>张三</Name> <age>18</age> </xml> """ xml_dict = xmltodict.parse(xml_str) # 解析xml字符串 print(type(xml_dict)) # <class 'collections.OrderedDict'> 类字典型,可以按照字典方法操作 print xml_dict # 遍历 for key, val in xml_dict['xml'].items(): print key, "---", val
demo.py(字典转成xml字符串):
# coding:utf-8
import xmltodict # 导入
# 字典
xml_dict = {
"xml": {
"name" : u"张三",
"age" : 18
}
}
# 字典转换成XML字符串
# xml_str = xmltodict.unparse(xml_dict)
xml_str = xmltodict.unparse(xml_dict, pretty=True) # pretty表示友好输出(有换行)
print(xml_str)总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Python使用Beautiful Soup爬取豆瓣音乐排行榜过程解析
这篇文章主要介绍了Python使用Beautiful Soup爬取网页过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2019-08-08
最新PyCharm从安装到PyCharm永久激活再到PyCharm官方中文汉化详细教程
这篇文章涵盖了最新版PyCharm安装教程,最新版PyCharm永久激活码教程,PyCharm官方中文(汉化)版安装教程图文并茂非常详细,需要的朋友可以参考下2020-11-11
使用python+requests+pytest实现接口自动化
这篇文章主要介绍了使用python+requests+pytest实现接口自动化,在当前互联网产品迭代频繁的背景下,回归测试的时间越来越少,但接口自动化测试因其实现简单、维护成本低,容易提高覆盖率等特点,越来越受重视,需要的朋友可以参考下2023-08-08
Python中的list.sort()方法和函数sorted(list)
这篇文章主要介绍了Python中的list.sort()方法和函数sorted(list),sort()是列表的方法,修改原列表使得它按照大小排序,没有返回值,返回None2022-08-08


最新评论