我试图从文件中读取行并在有效的循环中打印它们,但在每个打印语句后我都会得到换行符。
这是我的课
class FileReader:
"""Reads a file from args"""
def __init__(self, args):
input = ''
with open(args, 'r') as rFile:
for line in rFile:
print(line)
我的输入文件是这样的。 (“$”是新行):
12 3$
2$
9$
5$
3 4$
我的输出变成:
12 3
2
9
5
3 4
我获得这些空间的原因是什么?
最佳答案
当你循环一个文件时,产生的行包括行尾的换行符。使用 print()
输出带有额外换行符的这些行。
您可以使用.strip()
删除行首和行尾的空格,包括换行符。
如果您只想删除末尾的换行符,请使用line[:-1]
或line.rstrip('\n')
删除它。
最后但并非最不重要的一点是,您还可以告诉 print()
不要添加换行符:
print(line, end='')
关于python - 读取行并循环文件对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13768413/