Detaillierte Erläuterung der grundlegenden Verwendung von JSON in Python

高洛峰
Freigeben: 2017-02-23 16:48:33
Original
1499 Leute haben es durchsucht

Bei der Verwendung von JSON in Python verwenden Sie hauptsächlich das JSON-Modul. JSON ist ein gutes Format für die Dateninteraktion, daher kann das JSON-Datenformat in vielen Fällen als Schnittstelle zwischen Programmen verwendet werden.

#!/usr/bin/env python 
#-*- coding:utf-8 -*- 
import json 
 
print json.load(open('kel.txt')) 
#deserialize string or unicode to python object 
j = json.loads(open('kel.txt').read(),encoding='utf-8') 
print type(j),j 
for i in j: 
  print i 
k = json.dumps(j,encoding='utf-8').decode('utf-8') 
print k
Nach dem Login kopieren

Der Inhalt der Datei kel.txt lautet wie folgt:

{ 
  "中文":"kel", 
  "fist":"kel" 
}
Nach dem Login kopieren


Die Ausführungsergebnisse sind wie folgt:

{u'\u4e2d\u6587': u'kel', u'fist': u'kel'} 
<type &#39;dict&#39;> {u&#39;\u4e2d\u6587&#39;: u&#39;kel&#39;, u&#39;fist&#39;: u&#39;kel&#39;} 
中文 
fist 
{"\u4e2d\u6587": "kel", "fist": "kel"}
Nach dem Login kopieren

Die hauptsächlich verwendeten Methoden sind JSON .loads und json.dumps

Beachten Sie, dass die Parameter in Loads Zeichenfolgen sein müssen. Beim Öffnen der Datei müssen Sie daher die Lesemethode verwenden, da sonst ein Fehler auftritt.

Die Loads-Methode wird hauptsächlich zum Laden von JSON-Daten in Objekte in Python verwendet, während die Dumps-Methode hauptsächlich zum Ändern von Python-Objekten in das JSON-Format verwendet wird.

ist wie folgt auf einen Fehler gestoßen:

[root@python 56]# python kel.py  
Traceback (most recent call last): 
 File "kel.py", line 5, in <module> 
  json.load(open(&#39;kel.txt&#39;)) 
 File "/usr/local/python/lib/python2.7/json/__init__.py", line 291, in load 
  **kw) 
 File "/usr/local/python/lib/python2.7/json/__init__.py", line 339, in loads 
  return _default_decoder.decode(s) 
 File "/usr/local/python/lib/python2.7/json/decoder.py", line 364, in decode 
  obj, end = self.raw_decode(s, idx=_w(s, 0).end()) 
 File "/usr/local/python/lib/python2.7/json/decoder.py", line 382, in raw_decode 
  raise ValueError("No JSON object could be decoded") 
ValueError: No JSON object could be decoded
Nach dem Login kopieren

Der Hauptgrund liegt darin, dass ,,, in den JSON-Daten enthalten ist Format Es muss mit doppelten Anführungszeichen beginnen. Die falsche JSON-Datei lautet wie folgt:

 { 
  "fist":&#39;kel&#39; 
}
Nach dem Login kopieren

Der Inhalt von kel.py lautet wie folgt:


 #!/usr/bin/env python 
#-*- coding:utf-8 -*- 
import json 
j = json.loads(open(&#39;kel.txt&#39;).read()) 
print type(j),j
Nach dem Login kopieren

Doppelte Anführungszeichen. . . Ich kann den Unterschied zwischen einfachen Anführungszeichen nicht erkennen

Manchmal wird beim Ausführen der Loads-Methode eine Zeichenfolge mit einfachen Anführungszeichen generiert. . . Dies gilt insbesondere für Python. Es hat nichts mit anderen Dingen zu tun, es geht hauptsächlich um Anführungszeichen! ! !


Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er zum Lernen aller beiträgt. Ich hoffe auch, dass jeder die PHP-Chinesisch-Website unterstützt.

Ausführlichere Erläuterungen zur grundlegenden Verwendung von JSON in Python finden Sie auf der chinesischen PHP-Website!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage