首页 > 解决方案 > 从 txt 文件创建字典

问题描述

我有一个要在字典中转换的 txt 文件。txt 的每个文件由以分号分隔的四个 str 组成。每个 str 将是字典的值。我尝试了下面的代码,但我正在堆栈如何继续。

text = "1;Mike;Brown;73/04/01;2;Anna;Smith;71/02/01"
file = open ("people.txt", "w")
file.write(tex)
file.close () file = open> ("people.txt", "r")
text = file.read()
file.close()
list => text.split(";") keys = ['id', 'name' , '姓氏', '出生']

预期的:

id: 1
name: Mikael
family name: Brown
Birth: 73/04/01

id: 2
name: Anna
family name: Smith
Birth: 71/02/01

谢谢

标签: pythondictionarytxt

解决方案


使用 csv 和 dictreader

  • t.txt
id;name;family name;Birth
1;Mike;Brown;73/04/01
2;Anna;Smith;71/02/01

  • 脚本
import csv

with open('t.txt','r') as file:
    f=csv.DictReader(file,delimiter=';')
    for i in f:
        print(i)

  • 输出
    {'id': '1', ' name': 'Mike', ' family name': 'Brown', ' Birth': '73/04/01'}
    {'id': '2', ' name': 'Anna', ' family name': 'Smith', ' Birth': '71/02/01'}

推荐阅读