pythonでのpickleモジュール学習
pythonにはpickleの標準モジュールがあり、このモジュールはほとんどのpythonのすべてのタイプをモジュールを通じてpickleで認識できるフォーマットに変換して記憶することができます.
pickelモジュールには主に2つの関数dump()とload()があります.
dump()は、指定したファイルにデータオブジェクトを特定のフォーマットで保存できます.
構文:
pickle.dump(obj,file)
load()は,pickleでシーケンス化されたデータをファイルから抽出し,pickleは独自の方法で元のフォーマットに復元する.
構文:
pickle.load(file)
pickleの使用:
まずdump()を用いてデータのセットをシーケンス化して格納する
スクリプトを実行すると、現在のディレクトリの下にaccountが生成されます.pklのファイル
これがpickleシーケンス化されたファイルです.もちろん、このフォーマットはpickleだけがどんなフォーマットで作られたのか知っているのではないでしょうか.はは.新しいファイルでこのファイルを参照するには、load()を使用する必要があります.
実行結果は次のとおりです.
もちろんこの過程で内容を修正するにはどうすればいいのでしょうか.簡単です.
次に、もう一度loadして修正したかどうか見てみましょう.
では、修正に成功したのを見ることができますよ.
pikcleモジュールはpythonでの機能が強く、これからよく使うモジュールでもありますよ.
pickelモジュールには主に2つの関数dump()とload()があります.
dump()は、指定したファイルにデータオブジェクトを特定のフォーマットで保存できます.
構文:
pickle.dump(obj,file)
load()は,pickleでシーケンス化されたデータをファイルから抽出し,pickleは独自の方法で元のフォーマットに復元する.
構文:
pickle.load(file)
pickleの使用:
まずdump()を用いてデータのセットをシーケンス化して格納する
#!/usr/bin/env python
import pickle
account_info = {
82345056 : ['123','150'],
82345057 : ['avcd','90']
}
pkl_file = file('account.pkl','wb') # account.pkl
pickle.dump(account_info, pkl_file) # dump
pkl_file.close()
スクリプトを実行すると、現在のディレクトリの下にaccountが生成されます.pklのファイル
root@addam:/script#more account.pkl
(dp0
I82345056
(lp1
S'123'
p2
aS'150'
p3
asI82345057
(lp4
S'avcd'
p5
aS'90'
p6
as.
これがpickleシーケンス化されたファイルです.もちろん、このフォーマットはpickleだけがどんなフォーマットで作られたのか知っているのではないでしょうか.はは.新しいファイルでこのファイルを参照するには、load()を使用する必要があります.
#!/usr/bin/env python
import pickle
pkl_file = file('account.pkl','rb') #
account_dic = pickle.load(pkl_file) # load
print account_dic
pkl_file.close()
~
実行結果は次のとおりです.
root@addam:/script#python Lod.py
{82345056: ['123', '150'], 82345057: ['avcd', '90']}
もちろんこの過程で内容を修正するにはどうすればいいのでしょうか.簡単です.
#!/usr/bin/env python
import pickle
account_info = {
82345056 : ['123','150',],
82345057 : ['avcd','90']
}
pkl_file = file('account.pkl','wb')
account_info[82345057][0] = 'abcd123' # 82345057 abcd23
pickle.dump(account_info, pkl_file)
pkl_file.close()
次に、もう一度loadして修正したかどうか見てみましょう.
root@addam:/script#python Lod.py
{82345056: ['123', '150'], 82345057: ['abcd123', '90']}
では、修正に成功したのを見ることができますよ.
pikcleモジュールはpythonでの機能が強く、これからよく使うモジュールでもありますよ.