中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python?Json讀寫操作之JsonPath怎么使用

發布時間:2023-04-15 14:30:27 來源:億速云 閱讀:139 作者:iii 欄目:開發技術

這篇文章主要介紹了Python Json讀寫操作之JsonPath怎么使用的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Python Json讀寫操作之JsonPath怎么使用文章都會有所收獲,下面我們一起來看看吧。

    Python Json讀寫操作_JsonPath用法詳解

    1. 介紹

    JSONPath是一種信息抽取類庫,是從JSON文檔中抽取指定信息的工具,提供多種語言實現版本,包括Javascript、Python、PHP和Java。

    JSONPath的安裝方法如下:pip install jsonpath

    JSONPath語法和XPATH語法對比,JSON結構清晰,可讀性高,復雜度低,非常容易匹配。JSONPath的語法與Xpath類似,如下表所示為JSONPath與XPath語法對比:

    Python?Json讀寫操作之JsonPath怎么使用

    2. 代碼示例

    bookJson = {
      "store": {
        "book":[
          { "category": "reference",
            "author": "Nigel Rees",
            "title": "Sayings of the Century",
            "price": 8.95
          },
          { "category": "fiction",
            "author": "J. R. R. Tolkien",
            "title": "The Lord of the Rings",
            "isbn": "0-395-19395-8",
            "price": 22.99
          }
        ],
        "bicycle": {
          "color": "red",
          "price": 19.95
        }
      }
    }

    變量bookJson中已經包含了這段JSON字符串,可通過以下代碼反序列化得到JSON對象:

    books=json.loads(bookJson)

    1)查看store下的bicycle的color屬性:

    checkurl = "$.store.bicycel.color"
    print(jsonpath.jsonpath(books, checkurl))
    # 輸出:['red']

    2)輸出book節點中包含的所有對象:

    checkurl = "$.store.book[*]"
    object_list=jsonpath.jsonpath(books, checkurl)
    print(object_list)

    3)輸出book節點的第一個對象:

    checkurl = "$.store.book[0]"
    obj = jsonpath.jsonpath(books, checkurl)
    print(obj)
    # 輸出: ['category': 'reference', 'author': 'Nigel Rees', 'title': 'Sayings of the Century', 'price': 8.95}]

    4)輸出book節點中所有對象對應的屬性title值:

    checkurl = "$.store.book[*].title"
    titles = jsonpath.jsonpath(books, checkurl)
    print(titles)
    # 輸出: ['Sayings of the Century', 'The Lord of the Rings']

    5)輸出book節點中category為fiction的所有對象:

    checkurl = "$.store.book[?(@.category=='fiction')]”
    books=jsonpath.jsonpath(books, checkurl)
    print(books)
    # 輸出:[{'category': 'fiction', 'author': 'J. R. R. Tolkien', 'title': 'The Lordof the Rings', 'isbn': '0-395-19395-8', 'price': 22.99}]

    6)輸出book節點中所有價格小于10的對象:

    checkurl="$.store.book[?(@.price<10)]"
    books = jsonpath.jsonpath(books, checkurl)
    print(books)
    # 輸出: [{'category': 'reference', 'author': 'Nigel Rees', 'title':'Sayings of the Century', 'price': 8.95}]

    7)輸出book節點中所有含有isb的對象:

    checkurl = "$.store.book[?(@.isb)]"
    books = jsonpath.jsonpath(books,checkurl)
    print(books)
    # 輸出: [{'category': 'fiction', 'author': 'J. R. R. Tolkien', 'title': 'The Lord of the Rings', 'isbn': '0-395-19395-8', 'price': 22.99}]

    關于“Python Json讀寫操作之JsonPath怎么使用”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“Python Json讀寫操作之JsonPath怎么使用”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    罗田县| 九龙县| 景宁| 昌乐县| 石河子市| 陵川县| 昆明市| 门头沟区| 应用必备| 柘城县| 金寨县| 青河县| 安新县| 怀化市| 徐水县| 资中县| 竹北市| 多伦县| 双流县| 策勒县| 汾阳市| 花垣县| 宁远县| 梁平县| 武定县| 黑山县| 卢龙县| 林口县| 扬州市| 涡阳县| 四子王旗| 西贡区| 通江县| 唐河县| 临安市| 商城县| 集安市| 巴塘县| 中超| 吴川市| 定西市|