ホームページ >バックエンド開発 >Python チュートリアル >後で使用するために Python オブジェクトを保存するにはどうすればよいですか?

後で使用するために Python オブジェクトを保存するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-15 01:37:10606ブラウズ

How Can I Save a Python Object for Later Use?

オブジェクトの保存: データの永続性

問題:

でオブジェクトを作成しました特定の属性を保存し、後で使用できるようにしたいと考えています。どうすればこれを達成できますか?

解決策:

Python でオブジェクトを保存するには、pickle モジュールを利用できます。このモジュールを使用した例を次に示します。

import pickle

class Company(object):
    def __init__(self, name, value):
        self.name = name
        self.value = value

with open('company_data.pkl', 'wb') as outp:
    company1 = Company('banana', 40)
    pickle.dump(company1, outp, pickle.HIGHEST_PROTOCOL)

    company2 = Company('spam', 42)
    pickle.dump(company2, outp, pickle.HIGHEST_PROTOCOL)

この例では、

  1. 保存するオブジェクトを表す Company クラスを作成しました。
  2. クラス コンストラクターでオブジェクトの属性 (名前と値) を定義しました。
  3. 書き込み用にファイルを開きましたバイナリ形式 ('wb') を使用し、pickle.dump を使用して Company オブジェクトをシリアル化し、ファイルに保存しました。

高度な考慮事項:

  • 高速化のために cPickle (または Python 3 では _pickle) の使用を検討してください。パフォーマンス。
  • ニーズと Python バージョンに基づいて、適切なデータ ストリーム形式 (プロトコル) を選択します。
  • Pickle ファイルには複数のオブジェクトを含めることができ、リストや辞書などのデータ構造に保存できます。
  • pickle_loader などのツールを利用して、複数のオブジェクトを簡単な方法で逆シリアル化およびロードします。

以上が後で使用するために Python オブジェクトを保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。