Python 2.x 中如何使用json模組將JSON字串轉換為Python對象

王林
發布: 2023-07-29 20:40:55
原創
1104 人瀏覽過

Python 2.x 中如何使用json模組將JSON字串轉換為Python物件

JSON(JavaScript Object Notation)是一種輕量級的資料交換格式,常用於將資料從一個應用程式傳輸到另一個應用程式。在Python中,可以使用json模組來處理JSON資料。本文將示範如何使用json模組將JSON字串轉換為Python物件。

首先,我們需要導入json模組:

import json
登入後複製

接下來,假設我們有以下的JSON字串:

json_str = '{"name": "Alice", "age": 25, "city": "New York"}'
登入後複製

現在,我們要將這個JSON字串轉換為Python物件。可以使用json模組的loads()函數來實作:

python_obj = json.loads(json_str)
登入後複製

這樣,json_str中的資料就被轉換為了一個Python字典物件。我們可以透過存取字典的鍵來取得對應的值:

print(python_obj["name"]) # 输出:Alice print(python_obj["age"]) # 输出:25 print(python_obj["city"]) # 输出:New York
登入後複製

除了將JSON字串轉換為字典對象,json模組還可以將JSON字串轉換為其他Python對象,例如列表、字串等。

如果JSON字串表示的是一個列表,可以使用json模組的loads()函數將其轉換為Python列表物件。例如:

json_str = '[1, 2, 3, 4, 5]' python_obj = json.loads(json_str) print(python_obj) # 输出:[1, 2, 3, 4, 5]
登入後複製

如果JSON字串表示的是字串,可以使用json模組的loads()函數將其轉換為Python字串物件。例如:

json_str = '"Hello, World!"' python_obj = json.loads(json_str) print(python_obj) # 输出:Hello, World!
登入後複製

要注意的是,JSON字串中的鍵和字串都必須使用雙引號括起來。如果使用單引號括起來,將會導致JSONDecodeError異常。

另外,如果JSON字串中包含浮點數、布林值等類型,json模組會自動將它們轉換為對應的Python物件。例如:

json_str = '{"price": 9.99, "is_available": true}' python_obj = json.loads(json_str) print(python_obj["price"]) # 输出:9.99 print(python_obj["is_available"]) # 输出:True
登入後複製

當然,我們也可以將JSON字串轉換為自訂的Python類別物件。只需定義一個與JSON字串對應的類,並在類別中實作from_json()方法來建構物件。以下是一個範例:

class Person(object): def __init__(self, name, age, city): self.name = name self.age = age self.city = city @classmethod def from_json(cls, json_str): python_obj = json.loads(json_str) return cls(python_obj["name"], python_obj["age"], python_obj["city"]) def __repr__(self): return "Person(name={}, age={}, city={})".format(self.name, self.age, self.city) json_str = '{"name": "Bob", "age": 30, "city": "London"}' person = Person.from_json(json_str) print(person) # 输出:Person(name=Bob, age=30, city=London)
登入後複製

透過實作from_json()方法,我們可以自訂將JSON字串轉換為Python物件的邏輯。

以上就是在Python 2.x 中使用json模組將JSON字串轉換為Python物件的方法。透過這種方式,我們可以輕鬆地提取和處理JSON數據,使其適應更廣泛的應用場景。

以上是Python 2.x 中如何使用json模組將JSON字串轉換為Python對象的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!