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、 写作(内容)
不要读最后两行