在python字典中获取正确的列表值



我希望我的字典具有文件名'hello.txt'的值,而不是数值1。我的代码是

file_list = [hello.txt, bye.txt, test.txt]
file_contents = ['text of hello', 'text of bye', 'text of test']
dict = {}
for i in range(len(file_list)):
check = file_contents[i].lower()
for item in words:

if item in check:
if item not in dict:
dict[item] = []

if item in dict:
dict[item].append(i+1)
dict = {k: list(set(v)) for k, v in dict.items()}
print(dict)

我当前得到的输出是

{'test': [3], 'text': [1, 2, 3]}

但是我希望它是

{'test': [test.txt], 'text': [hello.txt, bye.txt, test.txt]}

我该如何改变这一点?

与其在字典中添加i + 1,不如在字典中添加文件名,即file_list[i]

dict[item].append(file_list[i])

请注意,您可能会出现错误,因为您的文件名没有被引号包围,并且不被视为字符串。用这个代替:

file_list = ['hello.txt', 'bye.txt', 'test.txt']

相关内容

  • 没有找到相关文章

最新更新