如何在Python中访问文件(.txt)中的下一行

2024-06-25 23:17:11 发布

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

我有一个文件,我打开它,然后我检查了一些东西。如果这一行以“E PARAM”开头,并且其中还有“OOPS1”,那么我想检查下一行是否以“E PARAM”开头。如果没有,我将创建一个新的文件,并复制到那里,直到我没有击中另一个“E PARAM”行。因为Python没有next()选项。。。有什么能帮我的

import string
import os


A = "k_trap_cur"
B = open(A, 'r+')
lines = B.readline()

for lines in B:
    if lines.startswith("E PRAM"):
        if "OOPS: 1" in lines:
            while lines.next().startswith("E PARAM") == False: // HERE I want to access next line
                print " YES"

Tags: 文件inimportstringifparamos选项
1条回答
网友
1楼 · 发布于 2024-06-25 23:17:11

如果我没听错的话:

b = open(a, 'r+')
for line in b:
    if line.startswith("E PRAM") and "OOPS: 1" in line:
        next_line = next(b)
        # do whatever you need

文件提供所谓的“迭代器协议”,这就是它们在for-循环中工作的原因。如果需要,也可以手动调用它们的next函数。有关详细信息,请查看PEP-234。在

相关问题 更多 >