首頁 > 後端開發 > Python教學 > 如何在 Python 2 中將 JSON 資料轉換為字串物件?

如何在 Python 2 中將 JSON 資料轉換為字串物件?

Linda Hamilton
發布: 2024-11-02 06:38:29
原創
363 人瀏覽過

How to Convert JSON Data to String Objects in Python 2?

如何在Python 2 中從JSON 取得字串物件

儘管有ASCII 編碼的文字來源,但使用Python 存取JSON 資料可以存取JSON產生Unicode 對象。某些庫需要字串對象,從而導致相容性問題。

要在Python 2 中解決此問題,請考慮使用PyYAML 作為替代JSON 解析器:

<code class="python">import yaml

json_str = '["a", "b"]'
data = yaml.safe_load(json_str)</code>
登入後複製

結果:

['a', 'b']  # String objects
登入後複製

註解:

  • PyYAML 傳回ASCII 編碼資料的字串對象,但傳回Unicode 編碼資料的Unicode 物件。
  • 對 JSON 檔案使用 yaml.safe_load()。
  • 要獲得對 YAML 1.2 和低數位解析的更多支持,請使用 Ruamel YAML。

轉換:

如果無法保證 ASCII 值,請使用轉換函數來確保字串物件:

<code class="python">def to_str(obj):
    if isinstance(obj, unicode):
        return str(obj)
    elif isinstance(obj, list):
        return [to_str(item) for item in obj]
    elif isinstance(obj, dict):
        return {to_str(key): to_str(value) for key, value in obj.items()}
    else:
        return obj

data = json.loads(json_str, object_hook=to_str)</code>
登入後複製

以上是如何在 Python 2 中將 JSON 資料轉換為字串物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板