天天看點

python使用pickle,marshal進行序列化、反序列及JSON的使用Pickle序列化JSON(JavaScript Object Notation) marshal代碼示例參考

        python的pickle子產品實作了基本的資料序列和反序列化。通過pickle子產品的序列化操作我們能夠将程式中運作的對象資訊儲存到檔案中去,永久存儲;通過pickle子產品的反序列化操作,我們能夠從檔案中建立上一次程式儲存的對象

        json是一種輕量級的資料交換格式。易于人閱讀和編寫。同時也易于機器解析和生成。它基于javascript programming language, standard ecma-262 3rd edition - december 1999的一個子集。json采用完全獨立于語言的文本格式,但是也使用了類似于c語言家族的習慣(包括c, c++, c#, java, javascript, perl, python等)。這些特性使json成為理想的資料交換語言。 

        marshal并不是一個通用的子產品,在某些時候它是一個不被推薦使用的子產品,因為使用marshal序列化的二進制資料格式還沒有文檔化,在不同版本的python中,marshal的實作可能不一樣。也就是說,用python2.5序列為一個對象,用python2.6的程式反序列化所得到的對象,可能與原來的對象是不一樣的。但這個子產品存在的意義,正如python手冊中所說:the marshal module exists mainly to support reading and writing the “pseudo-compiled” code for python modules of .pyc files. 

<a href="http://blog.csdn.net/mldxs/article/details/8574518" target="_blank">http://blog.csdn.net/mldxs/article/details/8574518</a>

<a href="http://www.cnblogs.com/coser/archive/2011/12/14/2287739.html" target="_blank">http://www.cnblogs.com/coser/archive/2011/12/14/2287739.html</a>