首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将txt文件转换为Python中的字典

将txt文件转换为Python中的字典
EN

Stack Overflow用户
提问于 2022-03-11 14:28:49
回答 3查看 283关注 0票数 -2

假设存在以下文本文件(lemma_es.txt):

康耳昏迷

科迈斯

科默科马莫斯

科曼

第一列表示第二列的引理,第二列表示屈折字。

我试图制作一本字典,其中键是第二个单词中的单词,而值是第一列中的单词。

我需要的输出:

{“昏迷”:“comer”,“comais”:“comer”,“comamos”:“comer”,“coman”:“comer”.}

编辑:txt以:

1底漆

1名primera

1名primeras

1名primero

有些单词需要复制,只有在字典的值中,在txt中的第一列。

谢谢大家!

EN

回答 3

Stack Overflow用户

发布于 2022-03-11 14:32:36

IIUC,你可以:

代码语言:javascript
复制
with open('lemma_es.txt') as f:
    d = dict(reversed(l.strip().split()) for l in f)

产出:

代码语言:javascript
复制
{'coma': 'comer', 'comais': 'comer', 'comamos': 'comer', 'coman': 'comer'}

注意:注意,第二个单词必须是唯一的。

票数 1
EN

Stack Overflow用户

发布于 2022-03-11 14:35:22

我想你可以试试这个

代码语言:javascript
复制
myfile = open("lemma_es.txt", 'r')
data_dict = {}
for line in myfile:
    k, v = line.strip().split()
    data_dict[k.strip()] = v.strip()
 
myfile.close()
 
print(' text file to dictionary =\n ',data_dict)
票数 1
EN

Stack Overflow用户

发布于 2022-03-11 14:40:51

代码语言:javascript
复制
word_dict={}
with open("lemma_es.txt","r") as filehandle:
    for line in filehandle.readlines():
        word_dict[line.split()[-1]]=line.split()[0]

读取txt文件并使用readline读取每一行。拆分行,只使用列表的第二个值作为键。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71440033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档