我有一个小问题。我注意到,由于某种原因,当我在连接两个变量时使用+
符号时,Python会自动使用换行符。
for i in range(o):
a = Before.readline()
b = After.readline()
if a == b:
lines.append(" \n")
else:
plus = a + b
lines.append(a + b)
Final.writelines(lines)
这将导致具有这样的值的列表(请注意'B\nC\n'
)
[' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n',
' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n',
'B\nC\n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n', ' \n']
假设我已正确初始化文件Before
,After
和Final
,我该怎么做才能删除这些换行符并仅添加一个空格?我希望不使用很多库就可以做到这一点。
编辑:我确实知道.strip()
方法。删除新行确实非常有帮助。但是,我似乎对我的问题说错了一点。我还 想知道如何添加新行,因为a + ' ' + b
似乎并不起作用。我该怎么办?
双重编辑:我很愚蠢。我在附加区域中输入了错误的变量。没关系,还是谢谢你!
答案 0 :(得分:5)
Before.readline()
和After.readline()
在您正在读取的文件中包括换行符。要删除结尾的换行符和空格,您可以:
Before.readline().strip()
然后,如果您想在a+b
行中添加换行符,则需要以所需的任何方式显式地设置其格式。例如:
a + ' ' + b
"{} {}".format(a,b)
a + b + "\n"
将.strip()
添加到列表中时,也只能对其执行a
。如此之多!