簡體   English   中英

將列表從.txt文件轉換為字典

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM