微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在python中写入文件时跳过几行

如何解决在python中写入文件时跳过几行

我正在使用 fileinput.FileInput 从文件获取读取行。

for line in fileinput.FileInput("abc.txt",inplace=1):
    if matching_string in line:
        #print few lines
    print line,

例如abc.txt是

Hello
World
This is
Python
Script
Bye

matching_string 是“这个”。 我希望输出“abc.txt”为:

Hello
World
File changed
C++
Script
Bye

我需要修改间的一些行,跳过的行数不固定。有时,我可能需要像上面的例子那样跳过 2 行,有时只需要 1 行或更多行。

解决方法

fileinput 对象分配给变量。然后您可以使用 next() 读取循环体内的一行。

with fileinput.FileInput("abc.txt",inplace=1) as f:
    for line in f:
        if matching_string in line:
            #print few lines
            next(f) # skip over the next input line
        print(line)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。