Pythonでテキストファイルを読み込む方法

シード夫の勉強

Pythonでテキストファイルを1行づつ読み込む方法を紹介します。
今回はテキストを読み込むので、sample.txtというファイルを用意します。
中身はなんでもよいのですが、私は以下の内容のファイルを準備しました。
後々、16進数⇒10進数の勉強もしたいと思っているので、16進数表記のファイルを用意しました。

time      ID  1......8 9.....16
1     0x0002  01EE11DD 01EE11DD
1     0x000E  01AA11DD 01CC11DD
2     0x0002  01EE11DD 01EE11DD
3     0x0002  01EE11DD 01EE11DD
4     0x0002  01EE11DD 01EE11DD
4     0x000E  01AA11DD 01CC11DD

1行ごとにテキストファイルを読み込む方法

サンプルコードと実行結果は以下です。

import os

dir_path = r'C:\Users\ro_ky\Documents'
file_name = 'sample.txt'

file_path = os.path.join(dir_path, file_name)

with open(file_path) as f :
    lines = f.readlines()

print(lines)
C:\Users\ro_ky\Documents>py file_read.py
['time      ID  1......8 9.....16\n', '1     0x0002  01EE11DD 01EE11DD\n', '1     0x000E  01AA11DD 01CC11DD\n', '2     0x0002  01EE11DD 01EE11DD\n', '3     0x0002  01EE11DD 01EE11DD\n', '4     0x0002  01EE11DD 01EE11DD\n', '4     0x000E  01AA11DD 01CC11DD\n']

リストの中身を確認しよう

試しにリストの中身を確認してみます。
print(lines)を#でコメントアウトしてlinesの2配列目に何が入っているか確認してみます。
コードと出力結果は以下です。

import os

dir_path = r'C:\Users\ro_ky\Documents'
file_name = 'sample.txt'

file_path = os.path.join(dir_path, file_name)

with open(file_path) as f :
    lines = f.readlines()

#print(lines)
print(lines[1])
C:\Users\ro_ky\Documents>py file_read.py
1     0x0002  01EE11DD 01EE11DD

2番目の配列には2行目のデータが入っていることが分かりました。

コメント

タイトルとURLをコピーしました