如何用Python编写一个程序,在文件的一行末尾打印一个“字符串”?

2024-05-18 21:23:38 发布

您现在位置:Python中文网/ 问答频道 /正文

input_file包含:Hi How are you

预期输出为:AHi How are youB

尝试以下程序:

input = open("input_file",'r')
output = open("output_file",'w')

for line in input:
    newline = "A" + line + "B"
    output.write(newline)
input.close()
output.close()

我得到以下输出:

AHi How are you
B

请建议如何更改程序?你知道吗


Tags: 程序youforcloseinputoutputlinenewline
1条回答
网友
1楼 · 发布于 2024-05-18 21:23:38

当您从input文件中读取linein时,它实际上看起来像:

"Hi How are you\n"

即在行尾包含换行符。因此,在添加'A''B'之后,它看起来像:

"AHi How are you\nB"
              # ^ still has newline

你可以看到输出中的换行符。你知道吗

最简单的解决方法是添加^{}删除line开头和结尾的所有空格(包括换行):

newline = "A" + line.strip() + "B"

但我也建议换成更现代的string formatting

newline = "A{0}B".format(line.strip())

相关问题 更多 >

    热门问题