繁体   English   中英

从txt文件打印会在两者之间留下一行

[英]Printing from txt file leaves a line in between

我正在使用此代码:

konto_fail = open("konto.txt")
for line in konto_fail:
    if float(line) > 0:
        print (line)

如果我运行该程序,它将打印出必要的行,但是它们之间没有空行,这是我所不希望的。 我该如何解决?

那是因为该line的最后一个字符是\\n换行符。

为防止这种情况发生,请执行

print(line, end='')

默认end\\n因此默认情况下,您添加了两行(在字符串中一行,在打印末尾一行)。


这意味着我上面提供的解决方案等效于

print(line[:-1])

您还可以通过执行以下操作删除所有换行符

print(line.replace('\n', ''))

删除所有尾随空格(包括换行符)

print(line.strip())

最后删除所有结尾的空格(包括换行符)

print(line.rstrip())

开始时删除所有尾随空格(包括换行符)

print(line.lstrip())

用于打印的Python语法与其他语言不同。 默认情况下,在下一行中打印下一个输出。 因此,要对其进行更改,请将end='' (如果未指定,则end\\n )作为函数print()的最后一个属性

konto_fail = open("konto.txt")
for line in konto_fail:
    if float(line) > 0:
        print (line, end = '')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM