更改文件中的文本

时间:2012-12-15 16:04:22

标签: python

数据形式如下:

line1
text1
text2
line2
something text1

line3

输出:

line1 text1 text2
line2 something text1

line3

怎么能让它删除?

3 个答案:

答案 0 :(得分:1)

删除空行可以这样做:

with open('input') as fin, open('output', 'w') as fout:
    non_blank = (line for line in fin if line.strip())
    fout.writelines(non_blank)

答案 1 :(得分:0)

认为你的目标是删除空白,对吗?如果是这样的话:

inputfile = open('example.txt', 'r')
outputfile = open('examplelines.txt', 'w')

for line in inputfile:
    if line.strip('\n') != '':
        outputfile.write(line)

inputfile.close()
outputfile.close()

答案 2 :(得分:0)

也许这就是你想要的:

import sys

i = 2
for line in sys.stdin:
    if line.startswith('line%d' % i):
        i += 1
        sys.stdout.write('\n')
    if line == '\n':
        sys.stdout.write('\n')
    else:
        sys.stdout.write(line.rstrip() + ' ')

sys.stdout.write('\n')

这将贯穿输入行并收集文本,直到找到显示lineN的输入行。这样的一行在输入中开始一个新行。此外,输入中的空行作为输出中的空行传递。