print()の引数にend=''を追加して改行なしで出力できる
print()の引数にend=''を追加して改行なしで出力できます。
・参考ですが、他にsepオプションをよく使いますね。
参考:Pythonのprint()で区切り文字を設定する
改行ありのprint出力。
print(i)
改行なしのprint出力。
print(i, end='')
ファイルオープンしてreadlines()でリストを作成すると、
リストの要素は改行が含んでいます。
参考:[Python]ファイルを読み込むread()/readlines()/readline()の使い方
with open('in1.txt','r') as f:
str1 = f.readlines()
そのまま、print出力すると改行が重複してしまうので、
下記のようにすると、元のファイルどおり出力できますね。
for i in str1: print(i, end='')
サンプルコード
下記がサンプルコードになります。
$ cat sample.py
#!/usr/bin/env python3
# coding: UTF-8
with open('in1.txt','r') as f:
str1 = f.readlines()
print(str1)
print("改行あり")
for i in str1:
print(i)
print("改行なし")
for i in str1:
print(i, end='')
参考:[Python]with openで、ファイルオープンのクローズし忘れを防止
下記が実行結果になります。
$ ./sample.py ['line1\n', 'line2\n', 'line3\n'] 改行あり line1 line2 line3 改行なし line1 line2 line3
