初心者猫
Pythonの勉強だね!
ケタ猫
今回はファイルの読み込み方法について学習します。
初心者猫
ファイルの読み込みから頑張ろう。
ケタ猫
非常によく使う処理なので、便利な処理まで覚えておきましょう。
ファイル入出力
テキストファイルを利用して、ファイルの操作方法を学びましょう。
まずは下のファイルを作成してください。 -> abc.txt
AAA
BBB
CCC
DDD
EEE
それでは早速、ファイルの中身を読み込んでみましょう。
open()でファイルを開き、close()でファイルを閉じます。close()しなければ、ファイルは開きっぱなしになってしまいます。
file = open('abc.txt', encoding='utf-8')
print(file.read())
file.close()
# AAA
# BBB
# CCC
# DDD
# EEE
ファイルを自動で閉じるためにはwithを利用します。
とても便利ですね。
close()を書かずに使うことができます。
withを使うときは、as *** として、名前を定義する必要があります。
with open('abc.txt', encoding='utf-8') as file:
print(file.read())
ケタ猫
close()は書き忘れてしまうので、withを利用する方が一般的です。
ファイルの読込
それではファイルの内容を読み込んでみます。
read()を使えば、ファイルの全内容は全て読み込むことができます。
with open('abc.txt', encoding='utf-8') as file:
text = file.read()
print(text)
# AAA
# BBB
# CCC
# DDD
# EEE
readline()を使うと、ファイルを一行ずつ読み込むことができます。
覚えておくと便利です。
with open('abc.txt', encoding='utf-8') as file:
print(file.readline())
print(file.readline())
# AAA
#
# BBB
似ていますが、readlines()はファイルの全行をリストとして返します。
リストで処理したい場合は使いたいところです。
with open('abc.txt', encoding='utf-8') as file:
lines = file.readlines()
print(lines)
# ['AAA\n', 'BBB\n', 'CCC\n', 'DDD\n', 'EEE']
ループを使う
ループを使うことで、一行ずつ細かく処理することができます。
with open('abc.txt', encoding='utf-8') as file:
for row in file:
print(row)
末尾の改行を削除するのには、rstrip()を使います。
with open('abc.txt', encoding='utf-8') as file:
for row in file:
print(row.rstrip())
csvファイルの場合は、”,”で区切るために、このような処理が便利です。
with open('abc.txt', encoding='utf-8') as file:
for row in file:
columns = row.split(',')
print(columns)
それでは次回にまた!