如何在文本文件的每行开头和结尾写入内容?

4 投票
4 回答
12117 浏览
提问于 2025-04-17 05:12

我现在想找一种方法,在Python中给文本文件的每一行的开头和结尾写入内容。

比如说,

当前的TXT文档:

Jimmy
Was
Here

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

111Jimmy
111Was
111Here

在每一行的结尾写入第二个值

111Jimmy222
111Was222
111Here222

我在谷歌上找不到任何能正确实现这个功能的方法。我找到了一些写入特定行的办法,但没有找到可以这样处理所有行的方法。

4 个回答

0

假设你已经用readlines()把文件的内容读进了一个列表里,你可以这样做:

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

然后你可以把数据写回到文件里……

5

你可以通过使用 fileinput 并设置 inplace=1,在不打开多个文件的情况下对文件进行修改:

import fileinput
for line in fileinput.input('test.txt', inplace=1):
    print '{0}{1}{2}'.format('111', line.rstrip('\n'), '222')
12

在编程中,有时候我们会遇到一些问题,比如代码运行不正常或者出现错误。这种情况下,我们可以去一些技术论坛,比如StackOverflow,寻求帮助。在这些论坛上,很多人会分享他们的经验和解决方案。

当你在这些论坛上提问时,记得描述清楚你的问题,包括你遇到的错误信息和你尝试过的解决方法。这样其他人才能更好地理解你的问题,并给出有效的建议。

另外,查看别人提问和回答的问题也是一个很好的学习方式。你可以从中学到很多实用的知识和技巧,这对你以后的编程之路会有很大帮助。

总之,技术论坛是一个互相帮助和学习的地方,利用好这些资源,可以让你在编程的过程中少走很多弯路。

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))

撰写回答