Python 如何删除文件的最后两行?

Python 如何删除文件的最后两行?,python,replace,Python,Replace,我需要从文本文件中删除以下最后两行: ColorForeground=#000000 ColorBackground=#ffffff 使用以下命令将上述行附加到terminalrc文件: echo -e "ColorForeground=#000000\nColorBackground=#ffffff">>/home/jerzy/.config/xfce4/terminal/terminalrc 因此,要修改的文件的最后几行如下所示 DropdownKeepO

我需要从文本文件中删除以下最后两行:

ColorForeground=#000000
ColorBackground=#ffffff
使用以下命令将上述行附加到
terminalrc
文件:

echo -e "ColorForeground=#000000\nColorBackground=#ffffff">>/home/jerzy/.config/xfce4/terminal/terminalrc
因此,要修改的文件的最后几行如下所示

DropdownKeepOpenDefault=TRUE
ColorForeground=#000000
ColorBackground=#ffffff
为了使用
.replace()
方法删除文件的最后两行,我编写了以下Python脚本:

day = r"ColorForeground=#000000\nColorBackground=#ffffff"

file = r"/home/jerzy/.config/xfce4/terminal/terminalrc"

with open(file) as f:
    content = f.read()
    content = content.replace(day, "")
    with open(file, 'r+') as f2:
        f2.write(content)  
然而,我的脚本并没有像预期的那样工作。以下是其执行的结果:

DropdownKeepOpenDefault=TRUE

olorForeground=#000000
ColorBackground=#ffffff

Python代码中的错误在哪里?你怎么写这样的剧本?不使用正则表达式就可以完成此任务吗?

分别读取和写入,也不要将
day
设为原始字符串,这样会跳出换行符-

day=“color前台=#000000\nColorBackground=#ffffff\n”
打开(文件“r”)作为f:
content=f.read()
内容=内容。替换(天,“”)
打开(文件“w”)作为f:
f、 写作(内容)

不要读最后两行