pythonノート16_pickleモジュールのシーケンス化と逆シーケンス化


主な内容:
  • 小ターゲット:pickleモジュールシーケンス化と逆シーケンス化
  • 主な内容:pickleモジュール
  • を把握する
    この文章を読み終わったら、pickleの操作がまだ分かりません.あなたは私を探しに来て、私はあなたを打たないことを保証して、私はあなたに100のお年玉をあげます.
    1.pickleモジュール
    1.1 pickleを認識する:
    pickleモジュールは、Pythonオブジェクト構造をシーケンス化および逆シーケンス化するためのバイナリプロトコルを実現する.シーケンス化:Pythonオブジェクトをバイトストリームに変換します.逆シーケンス化:バイトストリームをPythonオブジェクトに変換します.
    1.2 pickleとJson:
    主な違い:
    JSONはテキストシーケンス化フォーマットであり、pickleはバイナリシーケンス化フォーマットである.JSONは一定の可読性を持っているが、pickleはJSONが他の言語と相互に変換することができず、pickle値はPythonに使用できる.
    2 pickleモジュール使用
    主な方法:
    方法
    説明
    pickle.dumps(obj, protocol=None,...)
    Pythonオブジェクトのシーケンス化
    pickle.loads(data, *, ...)
    逆シーケンス化
    pickle.dump(obj, file, ...)
    Pythonオブジェクトをシーケンス化してファイルに保存
    pickle.load(file, ...)
    シーケンス化ファイルをインポートし、Pythonオブジェクトに変換
  • シーケンス化と逆シーケンス化:
    import pickle
    names = ['   ','   ']
    #  Json   
    pdata = pickle.dumps(names)
    print(pdata)
    # Json    Python  
    data = pickle.loads(pdata)
    print(data)
    結果:
    b'\x80\x00q....'
    ['   ', '   ']
  • pickle処理ファイル
    import pickle
    fpath = r'C:\Users\hyg\Desktop\data\1.pickle'
    names = ['   ','   ']
    #    ,wb      
    f = open(fpath, 'wb')
    #  Json,     
    pickle.dump(names,f)
    f.close()
    #    ,rb      
    f = open(fpath, 'rb')
    # Json        ,   Python  
    pdata = pickle.load(f)
    print(pdata)
    f.close()
    結果:
    ['   ', '   ']
  • 以上がpickleに関する主な内容で、pickleの操作はjsonと似ていて、自分で操作してみることができます.