我已经阅读了几个与此类似的问题,但是所有问题都在删除第一行或最后一行,或者正在删除匹配(或不匹配)指定字符串的行。
我想要做的是删除文本文件中的第二行,然后将所有内容向上移动一行,而不是用空格填充第二行。
例如。第3行变成第2行,第4行变成第3行,依此类推。
例如,如果我的输入是:
1
2
3
4
5
我希望输出为:
1
3
4
5
我不能仅仅指定要删除的行(如果它与字符串匹配),因为第二行会根据日期每天更改。
我已经开始使用
with open('file.txt', 'r') as f:
lines = f.readlines()
f.write(lines)
但是我不知道如何更改它以跳过第二行。
语境:
这是为我的团队在工作中产生轮换。第一行是标题,第二行是最新日期。这意味着第二个行在每晚的午夜变成了昨天,那时候我需要删除该行并在末尾添加一个新行,但是这一部分要容易一些。
您必须先读取文件,然后用所需的行将其重写。例如:
lines = []
with open('file.txt', 'r') as f:
lines = f.readlines()
with open('file.txt', 'w') as f:
f.writelines(lines[:1] + lines[2:]) # This will skip the second line
只要您处理小文件,这就是一种可行的方法。否则,您最好从一个文件读取并写入另一个文件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句