我是Python编程新手。我遵循了“Learn python the hard way”一书,但它是基于 python 2x 的。
def print_one_line(line_number,f):
print(line_number,f.readline())
在此函数中,每次打印一行和新行。
1 gdfgty
2 yrty
3 l
我阅读了Python 2中的文档,如果我在readline()之后放置一个,(逗号) 那么它不会打印新的 。 这是纪录片:
为什么文件中的行与行之间有空行?这 readline() 函数返回 那是在文件末尾 那条线。这意味着打印的 正在添加到其中 已由 readline() 函数返回。要更改此行为,只需添加一个, (逗号)在打印末尾,这样它就不会打印自己的 .
当我使用 python 2x 运行文件时,就可以了,但是当我在 python 3x 中运行文件时,则会打印换行符。如何避免 python 3x 中的换行符?
由于您的内容已包含所需的换行符,请使用可选的
print()
参数告诉 end
函数不要添加任何换行符:
def print_one_line(line_number,f):
print(line_number,f.readline(), end='')
除了其他方式,你还可以使用:
import sys
sys.stdout.write(f.readline())
适用于迄今为止的每个 Python 版本。
您可以从输入中删除它,而不是在输出中跳过换行符:
print(line_number, f.readline().rstrip('\n'))