【发布时间】:2014-09-14 19:22:06
【问题描述】:
如何让你的函数在文本文件中找到单词出现的行并打印相应的行号?
我必须打开一个包含该段落的文本文件,然后应该在该段落中搜索某些单词,然后打印这些单词的特定行号。
这是我目前所拥有的。
def index (filepath, keywords):
file = open(filepath)
files_lines = [line for line in file]
counter = 0
for line in files_lines:
counter += 1
if line.find(keywords) >= 0:
print(keywords, counter)
counter = 0
输出应该是这样的
>>index('file.txt',['network', 'device', 'local'])
network 9
device 4
local 11
注意:网络、设备和本地是我试图在文件中搜索的词,9、4、11 是这些词出现的行号。
我收到一个错误,无法将 list 隐式转换为 str。任何帮助将非常感激。谢谢。
【问题讨论】:
-
问题如何定义一个词?
-
如果一个单词出现在多行怎么办?如果多个关键字出现在同一行怎么办?
标签: python line-numbers