スポンサーリンク

read()

read()はファイルの中身全てを返します。

下記がサンプルコードになります。

 $ cat sample.py 
#!/usr/bin/env python3
# coding: UTF-8

with open('in1.txt','r') as f:
	str1 = f.read()
	print(str1)
	print(str1, end='')

下記が実行結果になります。
print(str1)の最後には改行が入りますので、print(str1, end='')とすると改行が入らなくなります。
 $ ./sample.py 
line1
line2
line3

line1
line2
line3

スポンサーリンク

readlines()

readlines()は、ファイルの中身をリスト形式で返します。
1行1行がリストの要素になります。

下記がサンプルコードになります。

 #!/usr/bin/env python3
# coding: UTF-8

with open('in1.txt','r') as f:
	str1 = f.readlines()
	print(str1)

下記が実行結果になります。
リスト形式でprint出力されているのが確認できます。
 $ ./sample2.py 
['line1\n', 'line2\n', 'line3\n']

readline()

readline()は、readline()が実行される度に、1行ずつファイルの中身を返します。
whileと組み合わせるのが良いかと思います。

 $ cat sample3.py 
#!/usr/bin/env python3
# coding: UTF-8

with open('in1.txt','r') as f:
	str1 = f.readline()
	while str1:
		print(str1, end='')
		str1 = f.readline()

下記が実行結果になります。
str1は改行が含まれているので、単純にprint出力すると1行飛びに出力されてしまいます。
参考:[Python]改行なしでprint出力する(end=”を設定)
 $ ./sample3.py 
line1
line2
line3

スポンサーリンク