成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

python函數(shù)庫控制模塊之json庫的基本使用方法

89542767 / 552人閱讀

  json庫是解決JSON文件格式Python函數(shù)庫,json庫主要包含兩大類函數(shù)公式,實(shí)際操作函數(shù)公式和解析函數(shù),接下來本文關(guān)鍵為大家介紹了關(guān)于python函數(shù)庫控制模塊之json庫的基本使用方法,必須的小伙伴可以借鑒一下


  序言


  json,全稱是JavaScriptObjectNotation,其實(shí)就是JavaScript目標(biāo)標(biāo)識,根據(jù)目標(biāo)和二維數(shù)組的搭配表明數(shù)據(jù)信息,盡管構(gòu)造簡約可是結(jié)構(gòu)型水平很高,是一類輕量的數(shù)據(jù)傳輸文件格式。


  功效


  適用于將python目標(biāo)編號為json格式導(dǎo)出或存放,及其將json格式目標(biāo)編解碼為python目標(biāo)。

01.png

  1個(gè)JSON目標(biāo)能寫為如下所示形式:


  [{
  "name":"小亮",
  "height":"170",
  "age":"18"
  },{
  "name":"小芳",
  "height":"165",
  "age":"20"
  }]


  由中括號包圍著的就等于是目錄種類,頁面上的每一個(gè)原素能是隨意種類,這一例子中這是詞典種類,由中括號包圍著。


  JSON需要由之上兩種方式隨意組成,能夠不限次數(shù)嵌入,構(gòu)造清楚,是數(shù)據(jù)傳輸?shù)慕^佳形式。


  接下來先一起來了解一下json中l(wèi)oads,和load

02.png

  loads,load的使用方法


  比如,有段JSON方式的字符串?dāng)?shù)組,它是str種類,大家用json.loads轉(zhuǎn)換成python的算法設(shè)計(jì),變?yōu)槟夸浕蛟~典,那樣我們就可以來操作了。


  importjson
  data='''
  [{
  "name":"小亮",
  "height":"170",
  "age":"18"
  },{
  "name":"小芳",
  "height":"165",
  "age":"20"
  }]
  '''
  #打印出data類型
  print(type(data))
  #json類別的數(shù)據(jù)交換為python種類的信息
  new_data=json.loads(data)
  #打印出data類型
  print(type(new_data))

  運(yùn)作效果如下所示

03.png

  這樣子大家就可以使用檢索獲得相對應(yīng)的信息了,比如需要獲得第一個(gè)元素里的name特性,可以用如下所示形式:


  importjson
  data='''
  [{
  "name":"小亮",
  "height":"170",
  "age":"18"
  },{
  "name":"小芳",
  "height":"165",
  "age":"20"
  }]
  '''
  #打印出data類型
  print(type(data))
  #json類別的數(shù)據(jù)交換為python種類的信息
  new_data=json.loads(data)
  #獲得具體內(nèi)容
  name=new_data[0]['name']
  new_name=new_data[0].get('name')
  #打印出變換后data類型
  print(type(new_data))
  print(name)
  print(new_name)


  運(yùn)作效果

04.png

  之上就是loads的用法。


  load的使用方法就是將json格式文檔,轉(zhuǎn)化成python種類的信息。


  留意:load方式操控的是所有文件對象,這是把整個(gè)全部文件對象里面的東西轉(zhuǎn)化成json對象。(如圖是文件操作目標(biāo))

05.png

  例子


  importjson
  importjson
  #load的使用方法就是將json格式文檔,轉(zhuǎn)化成python種類的信息。
  #構(gòu)建該文件的文件對象
  withopen('test1.json',encoding='utf-8')asfp:
  #載入垓文件對象,轉(zhuǎn)換成python種類的信息
  pyth_list=json.load(fp)
  print(pyth_list)
  print(type(pyth_list))
  print(type(pyth_list[0]))


  必須有個(gè)文件操作目標(biāo)運(yùn)作效果

06.png

  之上就是loads和load的使用方法,兩種方式還可以在適度的場景中應(yīng)用。


  dumps,dump的使用方法


  json.dumps()函數(shù)公式,把python類別的數(shù)據(jù)交換成json字符串


  json.dump()函數(shù)公式,把python種類的信息以json格式貯存到文檔中

07.png

  dumps函數(shù)


  importjson
  data='''
  [{
  "name":"小亮",
  "height":"170",
  "age":"18"
  },{
  "name":"小芳",
  "height":"165",
  "age":"20"
  }]
  '''
  #打印出會(huì)來data類型
  print(type(data))
  #json類別的數(shù)據(jù)交換為python種類的信息
  new_data=json.loads(data)
  #把python類別的數(shù)據(jù)交換成json字符串
  lit=json.dumps(new_data)
  #打印出變換后data類型
  print(type(new_data))
  print(type(lit))

  運(yùn)作效果

08.png

  實(shí)際上loads和dumps的用法都是相同的,loads是將json類別的數(shù)據(jù)交換為python種類的信息,而dumps是將json類別的數(shù)據(jù)交換為python種類的信息。等同于有一個(gè)是編號有一個(gè)是編解碼。


  dump函數(shù)


  把python種類的信息以json格式貯存到文檔中


  importjson
  importjson
  data='''
  [{
  "name":"小亮",
  "height":"170",
  "age":"18"
  },{
  "name":"小芳",
  "height":"165",
  "age":"20"
  }]
  '''

  #json類別的數(shù)據(jù)交換為python種類的信息


  new_data=json.loads(data)


  #把python種類的信息以json格式貯存到文檔中


  #構(gòu)建要寫入文件目標(biāo)


  withopen('test1.json','w',encoding='utf-8')asfp:


  #把python種類的信息以json格式貯存到文檔中


  json.dump(new_data,fp,ensure_ascii=False)


  為了能導(dǎo)出漢語,還要特定參數(shù)ensure_ascii為False

09.png

  儲(chǔ)存文件

10.png


文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/129075.html

相關(guān)文章

  • Python基礎(chǔ)(十)模塊

    摘要:是回調(diào)函數(shù),當(dāng)鏈接服務(wù)器和相應(yīng)數(shù)據(jù)傳輸完畢時(shí)觸發(fā)本函數(shù)可選。僅僅是針對的,在中,已經(jīng)沒有這個(gè)模塊了,取代它的是。由于以流式讀取文件,從而速度較快,切少占用內(nèi)存,但是操作上稍復(fù)雜,需要用戶實(shí)現(xiàn)回調(diào)函數(shù)。 編寫模塊 模塊是程序 模塊就是一個(gè)擴(kuò)展名為.py的Python程序。 編寫模塊 #!/usr/bin/env python # coding=utf-8 lang = python 引...

    jlanglang 評論0 收藏0
  • Python爬蟲學(xué)習(xí)路線

    摘要:以下這些項(xiàng)目,你拿來學(xué)習(xí)學(xué)習(xí)練練手。當(dāng)你每個(gè)步驟都能做到很優(yōu)秀的時(shí)候,你應(yīng)該考慮如何組合這四個(gè)步驟,使你的爬蟲達(dá)到效率最高,也就是所謂的爬蟲策略問題,爬蟲策略學(xué)習(xí)不是一朝一夕的事情,建議多看看一些比較優(yōu)秀的爬蟲的設(shè)計(jì)方案,比如說。 (一)如何學(xué)習(xí)Python 學(xué)習(xí)Python大致可以分為以下幾個(gè)階段: 1.剛上手的時(shí)候肯定是先過一遍Python最基本的知識,比如說:變量、數(shù)據(jù)結(jié)構(gòu)、語法...

    liaoyg8023 評論0 收藏0
  • python基礎(chǔ)教程:異步IO API

    摘要:具有以下基本同步原語子進(jìn)程提供了通過創(chuàng)建和管理子進(jìn)程的。雖然隊(duì)列不是線程安全的,但它們被設(shè)計(jì)為專門用于代碼。表示異步操作的最終結(jié)果。 Python的asyncio是使用 async/await 語法編寫并發(fā)代碼的標(biāo)準(zhǔn)庫。通過上一節(jié)的講解,我們了解了它不斷變化的發(fā)展歷史。到了Python最新穩(wěn)定版 3.7 這個(gè)版本,asyncio又做了比較大的調(diào)整,把這個(gè)庫的API分為了 高層級API和...

    vboy1010 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<