python输出关键字的行号_python – 使用关键字行号创建字典
我試圖通讀一個txt.file并打印關鍵字出現的行號.這是我到目前為止所擁有的:
def index(filename, word_lst):
dic = {}
line_count = 0
for word in word_lst:
dic[word] = 0
with open(filename) as infile:
for line in infile:
line_count += 1
for word in word_lst:
if word in line:
dic[word] = line_count
print(dic)
輸出:
>>>{'mortal': 30, 'demon': 122, 'dying': 9, 'ghastly': 82, 'evil': 106, 'raven': 120, 'ghost': 9}
以上輸出有點正確.我遇到的問題是,例如,烏鴉應該打印44,53,55,64,78,97,104,111,118,120,而不僅僅是它出現的最后一個行號(120).
我一直在努力解決這個問題,并且我不確定如何添加關鍵字出現的所有行號而不覆蓋字典中已存儲的行號.
我是Python的新手,所以如果它是一個簡單的我想念我道歉,任何提示將不勝感激.
解決方法:
要從單詞映射多個行號,您需要映射到列表,而不是int:
def index(filename, word_lst):
dic = {}
line_count = 0
for word in word_lst:
dic[word] = [] #
with open(filename) as infile:
for line in infile:
line_count += 1
for word in word_lst:
if word in line:
dic[word].append(line_count) #
print(dic)
標簽:python,dictionary
總結
以上是生活随笔為你收集整理的python输出关键字的行号_python – 使用关键字行号创建字典的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Cannot add or update
- 下一篇: junit单元测试报错InvalidTe