メインコンテンツへスキップ

Pythonのpickleモジュールの使い方

··1 分·
Python Pickle
Makoto Morinaga
著者
Makoto Morinaga
技術メモ、コーディング、環境構築のための個人ノート。
目次

Pythonのpickleモジュールを使ったオブジェクトのシリアライズとデシリアライズについての簡単なメモです。pathlibを使ってファイルパスを指定する方法も含めます。

オブジェクトのシリアライズ(保存)
#

pickleを使ってオブジェクトをファイルに保存します。

python
import pickle
from pathlib import Path

# シリアライズするオブジェクトを作成
my_data = {'key': 'value', 'number': 42}

# 保存先のパスを指定し、オブジェクトを保存
path = Path('data.pkl')
with path.open('wb') as file:
    pickle.dump(my_data, file)

オブジェクトのデシリアライズ(読み込み)
#

pickleを使ってファイルからオブジェクトを復元します。

python
import pickle
from pathlib import Path

# 読み込むファイルのパスを指定
path = Path('data.pkl')

# ファイルからオブジェクトを読み込む
with path.open('rb') as file:
    data_loaded = pickle.load(file)

print(data_loaded)

注意点
#

pickleは便利ですが、特にデシリアライズ時には注意が必要です。pickle.load() は任意のコードを実行できるため、信頼できるデータ以外を読み込むのは危険です。必ず信頼できるデータソースのみを使う必要があります。

関連記事

EglotでのPython開発環境
··4 分
Eglot Lsp Python Emacs
Pythonでリストをn分割する方法
··1 分
List Python
Pythonで混同行列と分類レポートの生成
··1 分
Python Metric Classification Confusion-Matrix