亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

關(guān)于 Python json中l(wèi)oad和loads區(qū)別

 更新時間:2021年11月06日 10:01:25   作者:小小程序員ol  
這篇文章主要介紹了關(guān)于 Python json中l(wèi)oad和loads區(qū)別,文章也有簡單的說明它們之間的相同點(diǎn),然后詳細(xì)介紹不同點(diǎn),需要的朋友可以參考一下文章的具體內(nèi)容

一、相同點(diǎn)

  • dump dumps 都實(shí)現(xiàn)了序列化
  • load loads 都實(shí)現(xiàn)反序列化

變量從內(nèi)存中變成可存儲或傳輸?shù)倪^程稱之為序列化序列化是將對象狀態(tài)轉(zhuǎn)化為可保存或可傳輸格式的過程。

變量內(nèi)容從序列化的對象重新讀到內(nèi)存里稱之為反序列化反序列化是流轉(zhuǎn)換為對象。

二、區(qū)別

1.load 和 loads (反序列化)

load:針對文件句柄,將json格式的字符轉(zhuǎn)換為dict,從文件中讀取 (將string轉(zhuǎn)換為dict)

a_json = json.load(open('demo.json','r'))


loads:針對內(nèi)存對象,將string轉(zhuǎn)換為dict (將string轉(zhuǎn)換為dict)

a = json.loads('{'a':'1111','b':'2222'}')

2.dump 和 dumps(序列化)

dump:將dict類型轉(zhuǎn)換為json字符串格式,寫入到文件 (易存儲)

a_dict = {'a':'1111','b':'2222'}
json.dump(a_dict, open('demo.json', 'w')


dumps:將dict轉(zhuǎn)換為string (易傳輸)

a_dict = {'a':'1111','b':'2222'}
a_str = json.dumps(a_dict)

總結(jié):

根據(jù)序列化和反序列的特性

  • loads: 是將string轉(zhuǎn)換為dict
  • dumps: 是將dict轉(zhuǎn)換為string
  • load: 是將里json格式字符串轉(zhuǎn)化為dict,讀取文件
  • dump: 是將dict類型轉(zhuǎn)換為json格式字符串,存入文件

三、JSON進(jìn)階

1.序列化

# 使用class對象的__dict__方法
class Student(object):
    def __init__(self, name, age, score):
        self.name = name
        self.age = age
        self.score = score
import json
s = Student('Bob', 20, 88)
print(json.dumps(s, default=lambda obj: obj.__dict__))

2.反序列化

#Python學(xué)習(xí)交流群:531509025

def dict2student(d):
    return Student(d['name'], d['age'], d['score'])

json_str = '{"age": 20, "score": 88, "name": "Bob"}'
print(json.loads(json_str, object_hook=dict2student))

四、python中的序列化和反序列化

Python提供兩個模塊來實(shí)現(xiàn)序列化:cPicklepickle。這兩個模塊功能是一樣的,區(qū)別在于cPickle是C語言寫的,速度快,pickle是純Python寫的,速度慢。

  • 變量從內(nèi)存中變成可存儲或傳輸?shù)倪^程稱之為序列化,在Python中叫pickling
  • 變量內(nèi)容從序列化的對象重新讀到內(nèi)存里稱之為反序列化,即unpickling
try:
    import cPickle as pickle
except ImportError:
    import pickle

1.將內(nèi)存對象存取到磁盤

a = dict(a=1, b=2, c=3)
pickle.dumps(a)     # 將對象序列化為str然后存入文件

a = dict(a=1, b=2, c=3)
pickle.dump(a, open('a.txt', 'wb')) # 使用dump直接把對象序列化為file-like Object,注意是二進(jìn)制存儲

2.從磁盤讀取到內(nèi)存對象

pickle.load(open('a.txt', 'rb'))    #從file-like Object中直接反序列化出對象

到此這篇關(guān)于關(guān)于 Python json中l(wèi)oad和loads區(qū)別的文章就介紹到這了,更多相關(guān) Python json中l(wèi)oad和loads區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python類與實(shí)例的使用詳解

    Python類與實(shí)例的使用詳解

    面向?qū)ο笞钪匾母拍罹褪穷悾–lass)和實(shí)例(Instance),必須牢記類是抽象的模板,比如Student類,而實(shí)例是根據(jù)類創(chuàng)建出來的一個個具體的“對象”,每個對象都擁有相同的方法,但各自的數(shù)據(jù)可能不同
    2022-08-08
  • python實(shí)現(xiàn)名片管理系統(tǒng)

    python實(shí)現(xiàn)名片管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)名片管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • 全面了解Nginx, WSGI, Flask之間的關(guān)系

    全面了解Nginx, WSGI, Flask之間的關(guān)系

    下面小編就為大家分享一篇全面了解Nginx, WSGI, Flask之間的關(guān)系,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • Python中給List添加元素的4種方法分享

    Python中給List添加元素的4種方法分享

    這篇文章主要介紹了Python中給List添加元素的4種方法分享,本文講解了append()、extend()、insert()、加號等4個方法,并給出了操作實(shí)例,需要的朋友可以參考下
    2014-11-11
  • python實(shí)現(xiàn)單向鏈表詳解

    python實(shí)現(xiàn)單向鏈表詳解

    這篇文章主要介紹了python實(shí)現(xiàn)單向鏈表詳解,分享了相關(guān)代碼示例,每一步操作前都有簡單分析,小編覺得還是挺不錯的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • 如何使用Python腳本實(shí)現(xiàn)文件拷貝

    如何使用Python腳本實(shí)現(xiàn)文件拷貝

    這篇文章主要介紹了如何使用Python腳本實(shí)現(xiàn)文件拷貝,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 解讀python logging模塊的使用方法

    解讀python logging模塊的使用方法

    logging模塊是Python內(nèi)置的標(biāo)準(zhǔn)模塊,這篇文章主要介紹了解讀python logging模塊的使用方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • OpenCV實(shí)現(xiàn)圖片編解碼實(shí)踐

    OpenCV實(shí)現(xiàn)圖片編解碼實(shí)踐

    在很多應(yīng)用中,經(jīng)常會直接把圖片的二進(jìn)制數(shù)據(jù)進(jìn)行交換,這就需要對普通進(jìn)行編碼解碼,那么怎么才能實(shí)現(xiàn),本文就來介紹一下
    2021-06-06
  • Python計(jì)算指定日期是今年的第幾天(三種方法)

    Python計(jì)算指定日期是今年的第幾天(三種方法)

    這篇文章主要介紹了Python三種方法計(jì)算指定日期是今年的第幾天,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 解決Jupyter notebook中.py與.ipynb文件的import問題

    解決Jupyter notebook中.py與.ipynb文件的import問題

    這篇文章主要介紹了解決Jupyter notebook中.py與.ipynb文件的import問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04

最新評論