如何从文本文件中读取字典格式的数据并转换格式?

如何从文本文件中读取字典格式的数据并转换格式?

从文本读取字典格式数据

本文介绍了如何从文本文件中读取字典格式的数据,并将数据转换成指定格式。

文本中的数据采用字典格式,其中键值对用单引号括住,如下图所示:

{'command': 'cmd1', 'option': [{'req': [{'ipt': [{'str1': 'name1'}]}]}], 'os': 'os1', 'device': 'd1'}

而我们需要将其转换成如下格式:

cmd1 name1 os1 d1
cmd2 name2 os2 d2
cmd3 name3_1 os2 d3
cmd3 name3_2 os2 d3
cmd3 name3_3 os2 d3

其中,option元素包含多个元素时,会分成多行。

原本打算利用文本中已经成型的字典格式,但读取文本时却得到了字符串形式的数据。

解决方法

实际上,文本中的格式已经非常接近 json 格式,只需将文本中的单引号替换为双引号,然后再使用 json.loads 函数加载即可。

完整代码如下:

import json

content = None
with open('data.txt', 'r', encoding='utf-8') as file:
    content = file.read()

content = content.replace("'", '"')
data = json.loads(content)

以上就是如何从文本文件中读取字典格式的数据并转换格式?的详细内容,更多请关注其它相关文章!