python-删除文件的特定行

发布时间:2019-09-10 09:20:15编辑:auto阅读(1720)

    有一次需要删除一些html文件中的统计链接,
    通过用遍历文本的每行,然后正则查找网址,使用下面的函数删除行。

    删除文本文件的特定行

    def removeLine(filename, lineno):
        fro = open(filename, "r",encoding='UTF-8')
    
        current_line = 0
        while current_line < lineno:
            fro.readline()
            current_line += 1
    
        seekpoint = fro.tell()
        frw = open(filename, "r+")
        frw.seek(seekpoint, 0)
    
        # read the line we want to discard
        fro.readline()  # 读入一行进内存 ,同时 文件指针下移实现删除
    
        # now move the rest of the lines in the file
        # one line back
        chars = fro.readline()
        while chars:
            frw.writelines(chars)
            chars = fro.readline()
    
        fro.close()
        frw.truncate()
        frw.close()

关键字