このコマンドを実行すると、次のことに気付きました。
comb = open ("out.txt", "r").readlines()[0]
print comb
out ファイルの最初の行と、その後に空行が出力されます。空の行があるのはなぜですか?
ドキュメントから:
readline()
ファイルから 1 行を読み取ります。改行文字 (\n
)は文字列の最後に残され、ファイルが改行で終わらない場合、ファイルの最後の行でのみ省略されます。
代わりにこれを使用できます:
open("out.txt", "r").read().splitlines()[0]
readlines()
EOL 文字を含む行を読み取り、print()
提供されたテキストを出力した後に EOL 文字を追加するためです。EOL - 通常、行末\n
。
file.readlines()
各行の末尾にある改行を削除せず、改行をprint
追加します。
空行があるのは、行が'\n'
各行の終わりに文字 (改行) があるものとして読み取られるためです。残念ながら、Python はこれを自動的に削除しません。