如何从txt文件读取字典列表

时间:2019-01-13 04:22:37

标签: python list dictionary text-files

我正试图从文本文件中获取存储在列表中的字典

我搜索了一个json函数,该函数可以分隔字符串并将其保存在列表(字典列表)中,但是我不知道是否存在类似的内容。

txt:

[{"Principal": ["Jhon","Anderson","40"]}, {"Secretary": ["Marie","Garcia","29"]},{"Councilor": ["Alan", "Smith","33"]}]

邮政编码:

stringvar=textfile.read()

//或以下功能

dictionaries=json.loads(textfile.read())
otherlist=dictionaries

2 个答案:

答案 0 :(得分:0)

首先,这些文件称为json文件。

您可以打开它们并阅读为:

import json
f = open("results/results.json")
data = json.load(f)

json文件中的方括号定义一个数组,而curl将对象括起来。前者将转换为python列表,后者将转换为字典。

因此,在您的情况下,data将是词典列表。

您可以使用字典类keys()values()的方法来获取值和键,或者同时获取items()

为完整起见,您的json元素应具有相同的结构,仅应更改字段。例如,考虑一个元素:

{"role"    : "Principal",
 "name:    : "Jhon",
 "surname. : "Anderson",
 "age":   40}

通过这种方式,您可以更轻松地遍历json

答案 1 :(得分:0)

如果您希望从Python的txt文件中加载字典列表,则可以使用literal_eval模块中的ast函数来计算表达式文件中字符串的位置:

import ast

data = []
with open("data.txt", "r") as inFile:
    data = ast.literal_eval(inFile.read())