Python 将文本文件转换为字典

Python 将文本文件转换为字典,python,dictionary,Python,Dictionary,假设我想在Pycharm(keywords.txt)中打开一个文本文件,并假设该文本文件包含一个单词列表,带有相应的数值,因此该文本文件的形式如下: apple, 3 banana, 5 happy, 7 tiger, 9 (数值范围为1-10) 我理解,为了打开此文件(在读取模式下),我们将执行以下操作: with open('keywords.txt','r') as f: {'k_text': None} 我如何阅读文本文件每行中的每个单词,然后将其作为关键字存储到词典中,然后还存

假设我想在Pycharm(keywords.txt)中打开一个文本文件,并假设该文本文件包含一个单词列表,带有相应的数值,因此该文本文件的形式如下:

apple, 3
banana, 5 
happy, 7
tiger, 9
(数值范围为1-10)

我理解,为了打开此文件(在读取模式下),我们将执行以下操作:

with open('keywords.txt','r') as f:
{'k_text': None}
我如何阅读文本文件每行中的每个单词,然后将其作为关键字存储到词典中,然后还存储其相应的数值

例如:

dictionary = {'apple':'3','banana':'5','happy':'7','tiger':'9'}
我尝试的是:

with open('keywords.txt','r') as k:
    size_to_read = 1
    k_text = k.read(size_to_read)
    while len(k_text) > 0:
            if k_text.isalpha:
                keywordic = dict.fromkeys({'k_text'})
                print(keywordic)
            k_text = k.read(size_to_read)
我真的不知道我要去哪里

它只打印以下内容:

with open('keywords.txt','r') as f:
{'k_text': None}

只需逐行读取文件,对于每一行字符串,使用'split(',')获取行中第一项和第二项的列表,然后可以将这两个字符串存储在字典中,必要时可以将第二个字符串转换为整数

def readFile(filename):
    # Dict that will contain keys and values
    dictionary =  {}
    with open(filename, "r") as f:
        for line in f:
            s = line.strip().split(", ")
            dictionary[s[0]] = int(s[1])
        return dictionary

其工作原理是打开文件,使用
strip()
删除空白,使用
strip()
将字符串拆分为列表,然后将键设置为字符串数组
s
的第一部分,即结果,将第二部分的值强制转换为
int

后,您可以使用myfile中的
for line:
逐行迭代文件

dictionary = {}
with open("keywords.txt", "r") as file:
    for line in file:
        key, value = line.strip().split(",")
        dictionary[key] = value
print(dictionary)

尝试过任何方法来解决这个问题吗?我尝试过的方法对我不太好哈哈哈哈我们,发布你最好的尝试。好吧,看来你对这门语言的理解还不够,无法用它编程。显然,写一个答案并不能解决任何问题,因为它不能纠正你的误解和误解。先看看。了解循环、数据结构(查看字典文档),了解何时使用循环以及何时使用条件。理解方法和属性之间的区别。了解如何调用函数
k_text.isalpha不会做你期望的事。哈哈,谢谢。仅仅是一个CS的一年级本科生,他可能应该参加更多的讲座。收到以下错误:dictionary[s[0]=(int(s[1])indexer:list index out-out-range是否保证行的格式正确或相同?“string,#”?是的,每一行都有string,integer格式