[英]Converting a list from a .txt file into a dictionary
好的,我已经尝试了Python中将列表转换为字典中的所有方法,但似乎无法正常工作。 我正在尝试将我从.txt文件制作的列表转换成字典。 到目前为止,我的代码是:
import os.path
from tkinter import *
from tkinter.filedialog import askopenfilename
import csv
window = Tk()
window.title("Please Choose a .txt File")
fileName = askopenfilename()
classInfoList = []
classRoster = {}
with open(fileName, newline = '') as listClasses:
for line in csv.reader(listClasses):
classInfoList.append(line)
.txt文件的格式为:教授班学生
例如:White Chem 101教授Jesse Pinkman,Brandon Walsh,Skinny Pete
我想要的输出将是一本以教授为键的字典,然后是值的班级和学生名单。
OUTPUT:
{"Professor White": ["Chem 101", [Jesse Pinkman, Brandon Walsh, Skinny Pete]]}
但是,当我尝试以上文章中的内容时,我不断遇到错误。
我在这里可以做什么?
谢谢
由于构成字典的数据是连续的,因此您必须一次处理三行。 您可以在文件句柄上使用next()
方法,如下所示:
output = {}
input_file = open('file1')
for line in input_file:
key = line.strip()
value = [next(input_file).strip()]
value.append(next(input_file).split(','))
output[key] = value
input_file.close()
这将为您提供:
{'Professor White': ['Chem 101',
['Jesse Pinkman, Brandon Walsh, Skinny Pete']]}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.