Python ファイル入出力ライブラリ¶
色々な形式のファイルを入出力するライブラリについてまとめます。
設定ファイルの読み込み¶
さまざまな形式のテキストファイルに設定を記述しておき、プログラム実行時に設定ファイルを読み込みその設定に従って処理を行うことが目的です。
settings¶
Python 3標準搭載ライブラリです。Pythonプログラムと同じディレクトリに、settings.py の名前で設定ファイルを保管します。
プログラムでは、settingsライブラリをimportするだけで、settings.pyの設定内容が参照可能となります。
- settings.py
front = 'Alfa' center = 'Bravo' back = 'Charlie'
- use_settings.py
import settings print(f'front = {settings.front}') print(f'center= {settings.center}') print(f'back = {settings.back}')
configparser¶
Python 3標準搭載ライブラリです。INI形式のファイルを読み込みます。
- settings.ini
[ARRANGE] front = Alfa center = Bravo back = Charlie
- use_configparser.py
import configparser config = configparser.ConfigParser() config.read('settings.ini', 'UTF-8') print(f'front={config.get("ARRANGE", "front")}') print(f'center={config["ARRANGE"]["center"]}') config_arrange = config['ARRANGE'] print(f'back={config_arrange["back"]}')
- セクションとキーを指定してgetメソッドで取得する方法
config.get('ARRANGE', 'front')
- セクションとキーを指定して角括弧で取得する方法
config['ARRANGE']['center']
- セクションを指定して取り出してから、キーを指定して取得
config_arrange = config['ARRANGE'] config_arrange['back']
バイナリファイルの読み書き¶
バイナリファイルの読み込み¶
open¶
open関数に、バイナリファイル読み書きの属性を指定することで、バイナリファイルを読み書きします。
バイナリファイルの読み込み例¶
file=open('PathToFile', 'rb')
read¶
バイナリファイル全体を読み込むか、サイズを指定して読み込みます。
data = file.read() # ファイル全体を読み込み
data = file.read(256) # 256バイトを読み込み
テキストファイルの読み書き¶
テキストファイルの読み込み¶
ファイルをテキストモードでopenします。
import sys
:
file = open("mywork.txt", "r")
ファイルを1行単位で読み込むか、まとめて全部を読み込むか