Heim  >  Artikel  >  Backend-Entwicklung  >  Die JSON-Parsing-Funktion von Python unterstützt keine Zeichenfolgen in einfachen Anführungszeichen

Die JSON-Parsing-Funktion von Python unterstützt keine Zeichenfolgen in einfachen Anführungszeichen

巴扎黑
巴扎黑Original
2016-12-03 11:15:441651Durchsuche

Verwenden Sie die JSON-Parsing-Funktion json.loads der Python-Standardbibliothek. Es handelt sich um eine JSON-Zeichenfolge, die nicht in einfache Anführungszeichen gesetzt werden kann. Das Beispiel lautet wie folgt:

Verwenden Sie stattdessen doppelte Anführungszeichen oder rufen Sie json auf .dumps(a before Loads) ) kann ebenfalls verwendet werden.

>>> a = "{'aa':'dd','dd':'df'}"
>>> import json
>>> b = json.loads(a)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.6/json/__init__.py", line 307, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python2.6/json/decoder.py", line 319, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python2.6/json/decoder.py", line 336, in raw_decode
    obj, end = self._scanner.iterscan(s, **kw).next()
  File "/usr/lib64/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib64/python2.6/json/decoder.py", line 171, in JSONObject
    raise ValueError(errmsg("Expecting property name", s, end))
ValueError: Expecting property name: line 1 column 1 (char 1)
>>> a = &#39;{"aa":"asdf","dd":"dfads"}
  File "<stdin>", line 1
    a = &#39;{"aa":"asdf","dd":"dfads"}
                                  ^
SyntaxError: EOL while scanning string literal
>>> a = &#39;{"aa":"asdf","dd":"dfads"}&#39;
>>> b = json.loads(a)
>>> b
>>> <span style="font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 1.5; background-color: white;">{u&#39;aa&#39;: u&#39;asdf&#39;, u&#39;dd&#39;: u&#39;dfads&#39;}</span><span style="font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 1.5; background-color: white;">
</span>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Python-Operation MongodbNächster Artikel:Python-Operation Mongodb