首頁  >  文章  >  後端開發  >  將字典轉換為 JSON 時,請注意這個常見的陷阱

將字典轉換為 JSON 時,請注意這個常見的陷阱

DDD
DDD原創
2024-10-20 21:02:02748瀏覽

When Converting Dictionaries to JSON, Watch Out For This Common Pitfall

將字典轉換為 JSON 的陷阱

使用 JSON 資料時,了解 JSON 物件和 JSON 字串表示形式之間的區別至關重要。這種區別會影響我們操作和存取資料的方式。

在提供的程式碼中:

import json

r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)
file.write(str(r['rating']))

問題是由於使用 json.dumps() 並隨後嘗試存取結果字串中的鍵。 json.dumps() 將字典轉換為 JSON 物件的字串表示形式,而不是 JSON 物件本身。這意味著我們無法直接從字串存取 JSON 物件的屬性。

要解決這個問題,我們需要使用 json.loads() 將字串轉換回 JSON 物件。這允許我們使用點表示法或鍵值對存取 JSON 物件的屬性。

<code class="python">import json

r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)  # Converts to a JSON string
loaded_r = json.loads(r)  # Converts back to a JSON object
print(loaded_r['rating'])  # Accesses the 'rating' property</code>

在此修改後的程式碼中,我們首先使用 json.dumps() 將字典轉換為字串。然後,我們使用 json.loads() 將字串轉換回 JSON 物件。我們現在可以使用熟悉的點表示法來存取「評級」屬性。

以上是將字典轉換為 JSON 時,請注意這個常見的陷阱的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn