Python - 写入TXT中每行的开头和结尾

时间:2011-10-28 18:45:23

标签: python text text-files readlines

我目前正在寻找一种在Python中写入TXT文件的每一行的开头和结尾的方法。例如,

当前TXT文件:

Jimmy
Was
Here

将第一个值写入每行的开头

111Jimmy
111Was
111Here

将第二个值写入每行的结尾

111Jimmy222
111Was222
111Here222

似乎无法在Google上找到任何描述如何正确完成此操作的内容。我已经找到了写入特定行的方法,但并不是所有这些都以这种方式写入。任何帮助表示赞赏!谢谢!

4 个答案:

答案 0 :(得分:11)

prefix = '111'
suffix = '222'

with open('source.txt', 'r') as src:
    with open('dest.txt', 'w') as dest:
       for line in src:
           dest.write('%s%s%s\n' % (prefix, line.rstrip('\n'), suffix))

答案 1 :(得分:3)

您可以inplace=1 import fileinput for line in fileinput.input('test.txt', inplace=1): print '{0}{1}{2}'.format('111', line.rstrip('\n'), '222') 使用fileinput来更改文件而无需打开多个文件:

{{1}}

答案 2 :(得分:0)

假设您已使用列表中的readlines()读取文件,则可以执行

value1 = "" # appended at first
value2 = "" # appended at last
data = file.readlines()
data = [ ( value1 + str.rstrip('\n') + value2 + "\n" ) for str in data ]

然后将数据写回文件....

答案 3 :(得分:-1)

f1o = open("input.txt", "r")
f2o = open("output.txt", "w")

for line in f1o:
    f2o.write("111%s222\n" % line.replace("\n"))

f1o.close()
f2o.close()