在Python中自下而上搜索

2024-09-28 03:17:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图找到一种方法来搜索文件,而不是向下搜索并显示它找到的行。在

所以现在我搜索一个文档,找到我要查找的行并打印出来。我希望能够从那个位置搜索到我找到不同的行打印,然后继续搜索文档。在

我到处寻找答案,也找到了其他语言的东西,但它们在Python中不起作用。在

with open(currFile, "r") as f:
    searchlines = f.readlines()

for i, line in enumerate(searchlines):
    if "(F)" in line: 
        for l in searchlines[i:i+5]: print >> outfile, l, 

Tags: 文件方法答案in文档语言foras
2条回答

在处理文件时,列表理解常常是您的朋友:

with open("MyFile.txt","r") as f:
    lines = [line.strip() for line in f]

从这里开始,您可以使用for循环遍历以下行:

^{pr2}$

希望这有帮助:)

您可以执行以下操作以获得反向切片:

searchlines[i-1:i-5:-1]

例如:

^{pr2}$

您也可以按相反的顺序迭代索引,而不是切片:

for j in xrange(i - 1, i - 5, -1):
    l = searchlines[j] 
    # see if the line is what you want

相关问题 更多 >

    热门问题