从.tx创建字典

2024-10-02 14:25:15 发布

您现在位置:Python中文网/ 问答频道 /正文

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

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

我试过几种文本阅读功能,但都没有成功。所以我决定把这个带到这里来

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


Tags: 数据no系统格式学生samuel文本文件si
1条回答
网友
1楼 · 发布于 2024-10-02 14:25:15

你可以试试这个:

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])

相关问题 更多 >