Mengkonversi string ke JSON menggunakan Python

I'm sedikit bingung dengan JSON di Python. Bagi saya, ini tampak seperti kamus, dan untuk alasan itu I'm mencoba untuk melakukan itu:

{
    "glossary":
    {
        "title": "example glossary",
        "GlossDiv":
        {
            "title": "S",
            "GlossList":
            {
                "GlossEntry":
                {
                    "ID": "SGML",
                    "SortAs": "SGML",
                    "GlossTerm": "Standard Generalized Markup Language",
                    "Acronym": "SGML",
                    "Abbrev": "ISO 8879:1986",
                    "GlossDef":
                    {
                        "para": "A meta-markup language, used to create markup languages such as DocBook.",
                        "GlossSeeAlso": ["GML", "XML"]
                    },
                    "GlossSee": "markup"
                }
            }
        }
    }
}

Tapi ketika saya melakukan cetak dict(json), memberikan kesalahan.

Bagaimana saya bisa mengubah string ini ke dalam struktur dan kemudian memanggil json["judul"] untuk mendapatkan "contoh daftar istilah"?

Larutan

json.beban()

import json

d = json.loads(j)
print d['glossary']['title']
Komentar (6)

Ketika saya mulai menggunakan json, saya bingung dan tidak mampu mencari jalan keluar untuk beberapa waktu, tapi akhirnya saya mendapatkan apa yang saya inginkan Berikut adalah solusi sederhana

import json
m = {'id': 2, 'name': 'hussain'}
n = json.dumps(m)
o = json.loads(n)
print o['id'], o['name']    
Komentar (3)

gunakan simplejson atau cjson untuk pemercepat

import simplejson as json

json.loads(obj)

or 

cjson.decode(obj)
Komentar (0)

Jika anda percaya sumber data, anda dapat menggunakan eval untuk mengkonversi string ke dalam kamus:

eval(your_json_format_string)

Contoh:

>>> x = "{'a' : 1, 'b' : True, 'c' : 'C'}"
>>> y = eval(x)

>>> print x
{'a' : 1, 'b' : True, 'c' : 'C'}
>>> print y
{'a': 1, 'c': 'C', 'b': True}

>>> print type(x), type(y)


>>> print y['a'], type(y['a'])
1 

>>> print y['a'], type(y['b'])
1 

>>> print y['a'], type(y['c'])
1 
Komentar (6)