从文本文件中删除行?

25 投票
5 回答
67041 浏览
提问于 2025-04-15 18:01

我有一个叫做textfile.txt的文本文件,内容是这样的:

First Line
Second Line
Third Line
Fourth Line
Fifth Line
Sixth Line

我该怎么做才能最简单地删除前面三行和最后一行呢?

5 个回答

5

在编程中,有时候我们需要处理一些数据,比如从一个地方获取数据,然后在另一个地方使用这些数据。这个过程就像是把水从一个桶倒到另一个桶。

有些时候,我们会遇到一些问题,比如数据的格式不对,或者我们想要的数据没有被正确地获取到。这就像是你想要的水被堵住了,无法流到下一个桶里。

为了避免这些问题,我们可以使用一些工具和方法来确保数据能够顺利地从一个地方转移到另一个地方。这样,我们就能更好地管理和使用这些数据了。

总之,处理数据就像是搬运水,确保每一步都顺畅,才能最终得到我们想要的结果。

data="".join(open("textfile.txt").readlines()[3:-1])
open("newfile.txt","wb").write(data)
19

这个方法没有使用readlines(),所以它更适合处理较大的文件。

numline=3 #3 lines to skip
p=""
o=open("output.txt","a")
f=open("file")
for i in range(numline):
    f.next()
for line in f:
    if p:
        o.write(p)
    p=line
f.close()
o.close()

既然已经有了sed的解法,那我这里提供一个awk的解法。

$ awk 'NR>=4{if(p)print p;p=$0;}' file
Fourth Line
Fifth Line
43
with open('textfile.txt') as old, open('newfile.txt', 'w') as new:
    lines = old.readlines()
    new.writelines(lines[3:-1])

当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。

撰写回答