首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >是否从文本文件中删除行?

是否从文本文件中删除行?
EN

Stack Overflow用户
提问于 2010-01-14 21:04:03
回答 5查看 63K关注 0票数 24

我有一个这样的textfile.txt:

代码语言:javascript
复制
First Line
Second Line
Third Line
Fourth Line
Fifth Line
Sixth Line

如何删除最舒适的前三行和最后一行?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-01-14 21:11:48

代码语言:javascript
复制
with open('textfile.txt') as old, open('newfile.txt', 'w') as new:
    lines = old.readlines()
    new.writelines(lines[3:-1])
票数 40
EN

Stack Overflow用户

发布于 2010-01-14 21:44:47

这个函数没有使用readline(),所以它非常适合较大的文件。

代码语言:javascript
复制
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答案

代码语言:javascript
复制
$ awk 'NR>=4{if(p)print p;p=$0;}' file
Fourth Line
Fifth Line
票数 17
EN

Stack Overflow用户

发布于 2010-01-14 21:08:46

代码语言:javascript
复制
data="".join(open("textfile.txt").readlines()[3:-1])
open("newfile.txt","wb").write(data)
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2064184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档