从.txt创建字典

时间:2015-08-29 21:05:55

标签: python python-3.x

我必须为一大堆学生创建一个登录系统,其中数据由文本文件提供,格式如下:

SyntaxError: invalid syntax

我尝试过多次文本阅读功能但没有成功。这就是为什么我决定把它带到这里的原因。

在这种情况下,我需要实例化2个不同的用户并阅读该文件以使其成为可能。

1 个答案:

答案 0 :(得分:2)

你可以试试这个:

from ast import literal_eval

# or read that string in from the file with something like
# with open('filename.txt', 'r') as file:
#     strg = file.read()
strg = '''[ { "clave": "f22LwdI", "alumno": "SI", "nombre": "Samuel Riquelme" },
    { "clave": "KaEEkNjFz", "alumno": "NO", "nombre": "Paulina Toro", } ]'''

lst = literal_eval(strg)
print(lst[0]['clave'])

请注意,返回的对象是字典列表。

现在问题的格式已经更新:你的格式是(几乎)json;如果你更正了第二个字典末尾的多余逗号,你可以这样做:

import json

strg = '''[
  {
    "clave": "f22LwdI",
    "alumno": "SI",
    "nombre": "Samuel Riquelme"
  },
  {
    "clave": "KaEEkNjFz",
    "alumno": "NO",
    "nombre": "Paulina Toro"
  }
]'''

lst = json.loads(strg)
print(lst)
print(lst[1])