我正在使用此代码:konto_fail = open("konto.txt")for line in konto_fail: if float(line) > 0: print (line)如果我运行该程序,它会打印出必要的行,但在它们之间有一个我不想要的空行。我该如何解决?
2 回答

开满天机
TA贡献1786条经验 获得超13个赞
用于打印的 Python 语法与其他语言不同。在下一行打印下一个输出是默认的。所以,要改变它,把一个end=''(如果没有指定,end是\n)作为函数的最后一个属性print()
konto_fail = open("konto.txt")
for line in konto_fail:
if float(line) > 0:
print (line, end = '')

绝地无双
TA贡献1946条经验 获得超4个赞
这是因为的最后一个字符line
是\n
亦称一个换行符。
为了防止这种情况发生,请执行以下操作
print(line, end='')
默认end
是\n
因此默认情况下,将添加两个新线(一个字符串中,一个在打印结束)。
这意味着我上面提供的解决方案等效于
print(line[:-1])
您还可以通过执行删除所有换行符
print(line.replace('\n', ''))
删除所有尾随空格(包括换行符)
print(line.strip())
删除末尾的所有尾随空格(包括换行符)
print(line.rstrip())
删除开头的所有尾随空格(包括换行符)
print(line.lstrip())
添加回答
举报
0/150
提交
取消