首页 > 编程语言 >小白学 Python:将 XML 转换为字典的 Python 程序

小白学 Python:将 XML 转换为字典的 Python 程序

时间:2023-10-22 11:07:53浏览次数:39  
标签:XML xml Python pprint xmltodict 小白学 file my

在本文中,我们将讨论如何使用 Python 将 XML 转换为字典。

小白学 Python:将 XML 转换为字典的 Python 程序_Python

使用的模块

  • xmltodict:它是一个 Python 模块,使使用 XML 感觉就像使用 [JSON] 一样。在终端中运行以下命令来安装模块。

句法:

pip 安装 xmltodict

  • pprint: pprint 模块提供了以格式良好且更具可读性的方式“漂亮打印”任意 Python 数据结构的功能。

方法

  • 将必要的模块导入工作空间。
  • 以只读模式打开 XML 文件并使用 file.read() 读取内容并将其存储在变量中。

语法:

with open('filename', 'r', encoding='utf-8') as file:
    my_xml = file.read()
  • 使用xmltodict.parse()解析变量的内容并将其转换为字典。

语法 : 

xmltodict.parse(xml_input, encoding=’utf-8′, expat=expat, process_namespaces=False, namespace_separator=’:’, **kwargs)
  • 使用pprint(pretty print)以格式良好且可读的方式打印字典。

语法:

pprint.pprint(object, stream=None, indent=1, width=80, depth=None, *, compact=False, sort_dicts=True)

示例:将 XML 转换为字典

使用的文件:

小白学 Python:将 XML 转换为字典的 Python 程序_xml_02

Python:

# Import the required modules 
import xmltodict 
import pprint 

# Open the file and read the contents 
with open('example.xml', 'r', encoding='utf-8') as file: 
	my_xml = file.read() 

# Use xmltodict to parse and convert 
# the XML document 
my_dict = xmltodict.parse(my_xml) 

# Print the dictionary 
pprint.pprint(my_dict, indent=2) 

输出:

小白学 Python:将 XML 转换为字典的 Python 程序_Python_03

示例 2:将 XML 转换为字典

使用的文件:

小白学 Python:将 XML 转换为字典的 Python 程序_Python_04

Python:

# Import the required modules 
import xmltodict 
import pprint 

# Open the file and read the contents 
with open('example_2.xml', 'r', encoding='utf-8') as file: 
	my_xml = file.read() 

# Use xmltodict to parse and convert the 
# XML document 
my_dict = xmltodict.parse(my_xml) 

# Print the dictionary 
pprint.pprint(my_dict, indent=2) 

输出:

小白学 Python:将 XML 转换为字典的 Python 程序_Python_05

标签:XML,xml,Python,pprint,xmltodict,小白学,file,my
From: https://blog.51cto.com/demo007x/7974075

相关文章

  • 小白学 Python:在 Python 中创建 ChatGPT 克隆
    在Python中创建ChatGPT克隆我们将学习如何使用Python中的Flet开发具有多个节点的聊天应用程序以及使用OpenAI的text-davinci-003[ChatGPTAPI]模型引擎制作的应答机器人。Flet是什么?无需直接使用Flutter,程序员就可以使用FletPython库创建实时Web、移动和桌面应用......
  • 小白学 Python: 如何在Python中使用ChatGPT API?
    如何在Python中使用ChatGPTAPI?ChatGPT及其必然的应用。日复一日,我们周围的一切似乎都在通过使用不同人工智能和机器学习技术的多个人工智能模型以及使用Python的聊天机器人而变得自动化,聊天GPT的用途及其有用的应用程序之一我们今天将讨论。因此,在讨论其应用程序之前,让我们先......
  • python包引用方式总结
    本文为博主原创,转载请注明出处:在Python中,有多种引用包的方式。以下是常见的方式:1.import语句import语句是最常见和推荐的引用包的方式。它允许你引入整个包或包中的特定模块/子模块。importpackage_nameimportpackage_name.module_namefrompackage_nameimportmod......
  • 2023 版 Java和python开发线性代数探索
    目录前景提示需求分析1、初始化不需要指定矩阵的尺寸,并且可以直接传入数据。2、可以计算2x2矩阵的逆3、可以做2x2的矩阵乘法Java版本开发一、开发详情1、开发一个子类,如图所示。2、根据问题修改子类,父类,以便真实可用解决1、初始化不需要指定矩阵的尺寸,并且可以直接传入数据。解决......
  • bytewax python 流处理框架
    bytewaxpython流处理框架,支持批以及流处理,内部使用了timely-dataflowrust库bytewax支持的模式主要是多worker以及多process核心还是单机场景,暂时不支持多主机的集群模式,同时对于状态的存储以及recovery使用了sqlite说明以前我也介绍过一个基于rust的流处理引擎arroyo,......
  • Python入门系列20-日志logging模块
    一、概念日志是一种可以追踪某些软件运行时所发生事件的方法。软件开发人员可以在他们的代码中调用日志记录相关的方法来表明发生了某些事件,通过一个描述性的消息来描述这个事件,该消息能够可选的包含可变数据。而事件有重要性的概念,重要性被称为严重性级别。二、日志的作用通过记录......
  • Python入门指南
    Python入门指南Python中的“文本”代码用计算机程序设计语言写成的,可以被计算机执行的文本称为代码。输入从外界将数据传递给程序称为输入,即通过输入设备(例如:鼠标、键盘、和摄像头等)向计算机输入数据和信息。输出程序将数据传递给外界称为输出,即把计算机处理结果(例如:屏幕显......
  • Python-Json异常:Object of type Decimal is not JSON serializable
    源起:使用python分离出一串文本,因为是看起来像整数,结果json转换时发生异常:TypeError:ObjectoftypeDecimalisnotJSONserializablemsgInfo={"uid":3232324232}json.dumps(msgInfo,ensure_ascii=False)原因:decimal格式不能被json.dumps正确处理。json.dumps函数发现字......
  • ​在二叉搜索树中查找第n个最小节点的Python实现
    二叉搜索树(BinarySearchTree,BST)是一种非常常用的数据结构,它具有许多优秀的性质,例如插入、删除和查找的效率都非常高。今天我们要探讨的问题是:如何在二叉搜索树中查找第n个最小的节点。 首先,我们需要明白二叉搜索树的一个重要性质:对于任何一个节点,其左子树中的所有节点的值都小于......
  • 【Python】将Python中的多维列表进行展开
    1.引言在本教程中,我们将探索在Python中展平列表的不同方法。列表展开是指将多维列表转换为一维列表的过程,我们将介绍如何使用Python语法和NumPy库来分别展平二维、三维和四维度的列表。闲话少说,我们直接开始吧!2.展开二维列表让我们首先创建一个名为flatten_2d的函数,该函数......