Python 2 で JSON データを文字列オブジェクトに変換するには?

Linda Hamilton
リリース: 2024-11-02 06:38:29
オリジナル
274 人が閲覧しました

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

Python 2 で JSON から文字列オブジェクトを取得する方法

Python を使用して JSON データにアクセスすると、ASCII でエンコードされたテキスト ソースにもかかわらず Unicode オブジェクトが生成されることがあります。特定のライブラリは文字列オブジェクトを必要とするため、互換性の問題が発生します。

Python 2 でこれを解決するには、代替 JSON パーサーとして PyYAML を使用することを検討してください:

<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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!