我正在使用此代碼:konto_fail = open("konto.txt")for line in konto_fail: if float(line) > 0: print (line)如果我運行該程序,它會打印出必要的行,但在它們之間有一個我不想要的空行。我該如何解決?
2 回答

開滿天機
TA貢獻1786條經(jīng)驗 獲得超13個贊
用于打印的 Python 語法與其他語言不同。在下一行打印下一個輸出是默認的。所以,要改變它,把一個end=''(如果沒有指定,end是\n)作為函數(shù)的最后一個屬性print()
konto_fail = open("konto.txt")
for line in konto_fail:
if float(line) > 0:
print (line, end = '')

絕地無雙
TA貢獻1946條經(jīng)驗 獲得超4個贊
這是因為的最后一個字符line
是\n
亦稱一個換行符。
為了防止這種情況發(fā)生,請執(zhí)行以下操作
print(line, end='')
默認end
是\n
因此默認情況下,將添加兩個新線(一個字符串中,一個在打印結(jié)束)。
這意味著我上面提供的解決方案等效于
print(line[:-1])
您還可以通過執(zhí)行刪除所有換行符
print(line.replace('\n', ''))
刪除所有尾隨空格(包括換行符)
print(line.strip())
刪除末尾的所有尾隨空格(包括換行符)
print(line.rstrip())
刪除開頭的所有尾隨空格(包括換行符)
print(line.lstrip())
添加回答
舉報
0/150
提交
取消