Python:如何从以单词为键、以文件名为值的文件列表中构建单词词典?
我有一个从多个文件中提取的单词列表,我需要构建一个字典,以便该单词是一个与文件名列表对应的键,其中该单词作为其值出现(可以不止一个) 我已经有了从文件中提取所有单词并删除空格、逗号等的代码,所以这是一个单词列表 输出应如下所示:Python:如何从以单词为键、以文件名为值的文件列表中构建单词词典?,python,file,dictionary,Python,File,Dictionary,我有一个从多个文件中提取的单词列表,我需要构建一个字典,以便该单词是一个与文件名列表对应的键,其中该单词作为其值出现(可以不止一个) 我已经有了从文件中提取所有单词并删除空格、逗号等的代码,所以这是一个单词列表 输出应如下所示: {'on': ['file1.txt'], 'got': ['file1.txt'],'hello': ['file1.txt'],'a': ['file1.txt', 'file2.txt'], 'bad': ['file1.txt', 'file2.txt']}
{'on': ['file1.txt'], 'got': ['file1.txt'],'hello': ['file1.txt'],'a': ['file1.txt', 'file2.txt'], 'bad': ['file1.txt', 'file2.txt']}
我怎样才能做到呢?我想你想要这样的东西 注意:此python脚本文件必须与txt文件位于同一位置
files = os.listdir()
txt_files = []
for file in files:
if file.endswith('.txt'):
txt_files.append(file)
words = dict()
for file in txt_files:
with open(file,'r',encoding='utf-8') as file:
word_list = file.readlines()
words[str(file.name)] = word_list
print(words)
希望这能奏效
import os
wordLst = ['on', 'got','hello','a',
'bad']
dic = {}
for word in wordLst:
dic.update({word: []})
path = r'yourPath'
filelst = os.listdir(path)
for file in filelst:
if '.txt' not in file: continue
f = open(path + '\\' + file, 'r')
txt = f.readlines()
for key in dic.keys():
if key in txt:
dic[key].append(file)
循环遍历一个文件中的所有单词,对于每个单词,将文件名添加到字典中的一个列表中,该单词为key。顺便说一句,wordLst对应于您拥有的单词列表,因此您必须将其替换为实际列表。您还需要在path变量处放置文本文件所在目录的路径