在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

在Python中高效使用JSON的四種方法

如意 ? 來源:讀芯術微信公眾號 ? 作者:讀芯術微信公眾號 ? 2020-09-14 15:17 ? 次閱讀

字典和列表是 Python的兩種數據類型,也是用來處理JSON的完美工具。本文將主要分享以下內容:

如何載入、編寫JSON?

如何在命令行上優化、校驗JSON?

如何通過使用JMESPath對JSON文檔執行高級查詢?

1. JSON解碼

Python自帶一個功能強大、內容豐富的JSON庫。可通過以下方式導入:

import json

解碼JSON字符串很簡單,直接輸入 json.loads(…) 即可。它可以轉換成:

字典對象

列表數組

識別布爾值、整數、浮點數和字符串,在Python中進行正確轉換。

任何 null 都將被轉換為Python的None類型。

以下為json.loads 的一個實例:

在Python中高效使用JSON的四種方法

2. JSON編碼

編碼JSON也很簡單。使用json.dumps(…) 把由字典、列表和其他本機類型組成的Python對象轉換為字符串:

在Python中高效使用JSON的四種方法

這其實是一個完全相同的文檔,只是被轉換成了字符串。所以,要想讓JSON文檔更易讀,可使用縮進選項:

在Python中高效使用JSON的四種方法

3. 命令行用法

JSON庫也可從命令行使用,以校驗、優化JSON:

在Python中高效使用JSON的四種方法

如果你的電腦系統是Mac或Linux,并且能夠安裝JSON庫的話,那么你也可以研究一下jq 命令行工具。它除了有便于記憶,可以潤色代碼等優點外,還有許多其他特點。

4. 使用JMESPath搜索JSON

JMESPath是一種JSON查詢語言。它能夠讓你輕松地從JSON文檔中獲取所需數據。如果你用過JSON,就會覺得獲取嵌套值并不難。

例:doc[“person”][“age”]將在一個如下所示的文檔中獲取age的嵌套值:

在Python中高效使用JSON的四種方法

但如果是像下面這樣的文檔,該如何從這一組人名中提取所有年齡字段呢?

在Python中高效使用JSON的四種方法

我們可以簡單地寫一套關于這些人名的重復指令。雖然很容易,但重復指令運行較慢,會使你的代碼復雜化。所以,這就該派JMESPath上場了!

用JMESPath表達式編寫代碼:

persons[*].age

它將返回一個包含所有年齡的數組:[38, 45, 14]。

假設要篩選列表,只獲取名為“erik”的人的年齡。你可以編寫一個篩選程序來執行此操作:

persons[?name==‘erik’].age

看,多么流暢!

因為JMESPath不屬于Python標準庫,所以你需要一起安裝pip或pipenv。例如,在虛擬環境中使用pip:

在Python中高效使用JSON的四種方法

現在就去試一試吧!請嚴格按照交互式教程操作,同時也不要忘了在JMESPath站點上查看示例哦!
責編AJX

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 源代碼
    +關注

    關注

    96

    文章

    2945

    瀏覽量

    66748
  • python
    +關注

    關注

    56

    文章

    4797

    瀏覽量

    84690
  • JSON
    +關注

    關注

    0

    文章

    117

    瀏覽量

    6968
收藏 人收藏

    評論

    相關推薦

    Python字符串的特點和修改字符串的常見四種方法

    Python中修改字符串的幾種方法
    發表于 02-26 16:52

    IO口的四種使用方法

    IO口的四種使用方法高阻態的典型應用
    發表于 01-12 07:16

    IO口的四種使用方法

    IO口的四種使用方法高阻態的典型應用
    發表于 02-02 06:58

    Word技巧:快速實現雙面打印的四種方法

    Word技巧:快速實現雙面打印的四種方法 日常辦公中要求對文檔進行雙面打印是很常見的,在打印機沒有自帶雙面打印功能的情況下,
    發表于 12-29 10:31 ?1571次閱讀

    可以讓工具再次變得偉大的四種方法

    坐在CES的地板上聽主題演講時,我想到了一些思路,這些理念可以讓電子設備制造商們走的更遠。 有四種方法可以讓工具再次變得偉大。
    的頭像 發表于 01-18 08:51 ?4201次閱讀

    如何延長iPhone的壽命 告訴你四種方法

    本文主要介紹了如何延長iPhone壽命的四種簡單方法,具體的跟隨小編一起來了解一下。
    的頭像 發表于 03-31 07:19 ?7348次閱讀

    使用單片機四種方法實現的LED閃燈程序資料免費下載

    本文檔的主要內容詳細介紹的是使用單片機四種方法實現的LED閃燈程序資料免費下載。
    發表于 07-09 08:00 ?4次下載
    使用單片機<b class='flag-5'>四種方法</b>實現的LED閃燈程序資料免費下載

    電路板上二極管型號確定的四種方法

    作為電路板上的二極管可以有四種方法確定它們的型號。
    發表于 04-06 15:48 ?3w次閱讀

    python統計詞頻的三種方法

    python統計詞頻的三種方法方法
    發表于 05-25 14:33 ?2次下載

    HT32F5232學習之四種方法實現按鍵控制LED燈

    HT32F5232學習之四種方法實現按鍵控制LED燈
    發表于 11-29 16:51 ?11次下載
    HT32F5232學習之<b class='flag-5'>四種方法</b>實現按鍵控制LED燈

    改善您的模數轉換器系統電源抑制狀況的四種方法

    改善您的模數轉換器系統電源抑制狀況的四種方法
    發表于 11-04 09:51 ?1次下載
    改善您的模數轉換器系統電源抑制狀況的<b class='flag-5'>四種方法</b>

    四種方法實現LED點亮

    四種方法實現LED點亮程序分享
    發表于 12-28 10:03 ?3次下載

    工業顯示器維護的四種方法和優勢

    一些工業控制設備,如嵌入式工控機、工業平板電腦、工業顯示器等,日常使用中可能會遇到一些故障問題。遇到故障時如何維修工業顯示器?接下來,讓我們來看看工業顯示器維護的四種方法和優勢。
    的頭像 發表于 04-23 14:41 ?1311次閱讀

    測試電容器的四種方法有哪些

    測試電容器的四種方法 電容器是一非常常見的電子元件,它具有存儲電能的能力。測試電容器的方法也非常多,下面我們將詳細介紹四種常見的測試電容器的方法
    的頭像 發表于 09-01 15:11 ?1.4w次閱讀

    pwm脈寬調制的四種方法有哪些

    于電機控制、LED調光、音頻處理等領域。以下是四種常見的PWM脈寬調制方法: 固定頻率PWM(Fixed-Frequency PWM) 固定頻率PWM是一最基本的PWM調制方法。在這
    的頭像 發表于 08-08 15:10 ?1344次閱讀
    主站蜘蛛池模板: 天天躁狠狠躁| 美国bj69video18视频| 在线观看视频一区二区三区| 中文字幕88页| 狠狠干最新网址| 欧美精品一区二区三区在线播放 | 色狠狠狠狠综合影视| 国产精品日本亚洲777| 国产全部理论片线观看| 在线天堂视频| 国产成人a| 免费在线视频观看| 四虎在线最新地址4hu| 一级特黄视频| 日本一级高清不卡视频在线| 欧美人交性视频在线香蕉| 天堂网在线资源| 99久热| 国产图片区| 在线播放黄色网址| 三级高清| 深夜视频在线| 伊人五月婷婷| www.夜色| 欧美性猛交aa一级| 黄色顶级视频| 欧美亚洲综合另类型色妞| 三级四级特黄在线观看| 天天色综合社区| 中国一级毛片aaa片| www.黄网站| 亚洲a视频| 国模精品一区二区| 91免费在线视频| 伊人久久综合成人网小说| 国产高清视频在线免费观看| 成人午夜啪啪免费网站| 人人人人凹人人爽人人澡| 狠狠操夜夜| 日韩欧美一区二区三区视频| 奇米影视777欧美在线观看|