python 基礎之pickle 與json 報錯問題解決方案

Python 基礎之pickle與json

有沒有在搞pickle與json在進行數據儲存的時候老是報錯,這個有些讓人煩惱,在之前有一篇介紹過它們的基本用法以及在使用過長中避免一些坑,但是今天在把對象寫入的時候pickle 與json卻給我而給出了不同的結果。

我們先看一下我當時做的結果:

這是為啥?傳遞的參數是一致的為啥json和pickle會有如此大的差距呢?Student為啥就不是可序列化的對象呢?有些困惑,其實json中有許多的參數是可以設置的。之前的Student對象不可以序列化成json,是應為在默認的情況下,dumps方法不知道如何把Student實例變換成一個json的{}對象。

在可選參數default就是把任意一個對象可序列化為json的對象,這里就必須給Student專門寫一個轉化函數,再把函數傳遞進去就可以解決這個問題了,我們來看一下如何做:

看起來還是把這個問題初步解決掉了,哈哈!這個問題是解決了,下次再來個老師Teacher類,是不是還得這樣搞一下呀,這樣是不是就有點不合適了,那就得想個別的辦法,通常呢每一個calss 都有一個__dict__的方法,so ,這樣也是可以解決這個問題的,來做一下驗證:

解決的還可以,好了,媽媽再也不擔心我以后不會用pickle和json存儲對象數據了!??!學好python你需要一個良好的環境,一個優質的開發交流群,群里都是那種相互幫助的人才是可以的,我有建立一個python學習交流群,在群里我們相互幫助,相互關心,相互分享內容,這樣出問題幫助你的人就比較多,群號是301,還有056,最后是051,這樣就可以找到大神聚合的群,如果你只愿意別人幫助你,不愿意分享或者幫助別人,那就請不要加了,你把你會的告訴別人這是一種分享。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 要點: 函數式編程:注意不是“函數編程”,多了一個“式” 模塊:如何使用模塊 面向對象編程:面向對象的概念、屬性、...
    victorsungo閱讀 1,562評論 0 6
  • IO編程概念 IO在計算機中指Input/Output,也就是輸入和輸出。由于程序和運行時數據是在內存中駐留,由C...
    時間之友閱讀 731評論 0 0
  • 一邊看資料一邊練習分鏡頭,蘸水筆等工具不熟練和沒有意識到灰網的作用重要性,導致進展不順,但從中學習到漫畫特有的表達方式。
    鳥琴y閱讀 211評論 2 0