首页 > 解决方案 > 如何打印接下来的三行?

问题描述

我有一个具有以下格式的大文件:

美好的一天,珍妮。(待定)
再见,汤米。
美好的一天,亨利。
美好的一天,玛丽。
美好的一天,奥斯汀。
美好的一天,Eason。(待定)
美好的一天,Eric。
......

我需要做的是打印包含“待定”一词的行及其以下三行。但是,我只知道如何打印包含“待定”一词的行。有人可以帮忙吗?这是我的简单代码:

word = 'pending'
with open ('1.txt', 'r') as inf:
    for line in inf.readlines():
        #line = line.split()
        if word in line:
            print(line)

谢谢你的帮助。

标签: python

解决方案


差不多好了:

word = 'pending'
i=0
with open ('1.txt', 'r') as inf:
    for line in inf.readlines():
        if (word in line):
            print(line)
            i=1
        if(i>=1) and (i<4):
            print(line)
            i+=1

推荐阅读