Heim > Artikel > Backend-Entwicklung > So verwenden Sie JsonPath für Python-Json-Lese- und Schreibvorgänge
Die Installationsmethode von JSONPath ist wie folgt:
pip install jsonpath
Vergleich der JSONPath-Syntax und der XPATH-Syntax. JSON hat eine klare Struktur, hohe Lesbarkeit, geringe Komplexität und ist sehr einfach zuzuordnen. Die Syntax von JSONPath ähnelt der von XPath. Die folgende Tabelle zeigt den Syntaxvergleich zwischen JSONPath und JSON-Objekt:
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 } } }
1) Sehen Sie sich das Farbattribut des Fahrrads unter dem Store an:
books=json.loads(bookJson)
2) Geben Sie alle darin enthaltenen Objekte aus der Buchknoten:
checkurl = "$.store.bicycel.color" print(jsonpath.jsonpath(books, checkurl)) # 输出:['red']3) Geben Sie das erste Objekt des Buchknotens aus:
checkurl = "$.store.book[*]" object_list=jsonpath.jsonpath(books, checkurl) print(object_list)
checkurl = "$.store.book[0]" obj = jsonpath.jsonpath(books, checkurl) print(obj) # 输出: ['category': 'reference', 'author': 'Nigel Rees', 'title': 'Sayings of the Century', 'price': 8.95}]5) Geben Sie alle Objekte im Buch aus Knoten, dessen Kategorie Fiktion ist:
checkurl = "$.store.book[*].title" titles = jsonpath.jsonpath(books, checkurl) print(titles) # 输出: ['Sayings of the Century', 'The Lord of the Rings']6) Alle Objekte im Buchknoten ausgeben, deren Preis weniger als 10 beträgt:
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}]7) Alle Objekte ausgeben, die isb im Buchknoten enthalten:
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}]
Das obige ist der detaillierte Inhalt vonSo verwenden Sie JsonPath für Python-Json-Lese- und Schreibvorgänge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!