【Python】 Python ~ 基本編 / シリアライズ・デシリアライズ ~

■ はじめに

Python のシリアライズ(serialize)・デシリアライズ(deserialize)を扱う

シリアライズ / デシリアライズ

「import pickle」を使う

シリアライズ(serialize)

# シリアライズ
with open("person.pickle", 'wb') as file:
    pickle.dump(tom, file)

シリアライズ(deserialize)

# デシリアライズ
with open("person.pickle", 'rb') as file:
   obj = pickle.load(file)

■ サンプル

import pickle

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

def main():
    tom = Person("Tom", 23)
    print(tom.name)
    print(tom.age)

    # シリアライズ
    with open("person.pickle", 'wb') as file_to_write:
        pickle.dump(tom, file_to_write)
    
    # デシリアライズ
    with open("person.pickle", 'rb') as file_to_read:
        deserialized_person = pickle.load(file_to_read)

    print('***************') 
    print(deserialized_person.name)
    print(deserialized_person.age)

if __name__ == '__main__':
    main()

参考文献

https://qiita.com/kure/items/b33f979a516ad32d7c68

関連記事

Python ~ 基本編 / 文字列 ~
https://dk521123.hatenablog.com/entry/2019/10/12/075251