415 Stimmen

Was sind die Unterschiede zwischen den Python-Modulen json und simplejson?

Ich habe viele Projekte gesehen, bei denen simplejson Modul anstelle von json Modul aus der Standardbibliothek. Außerdem gibt es viele verschiedene simplejson Module. Warum sollte man diese Alternativen verwenden, anstatt die der Standardbibliothek?

2voto

Jeko Punkte 21

Simplejson Modul ist einfach 1,5 mal schneller als json (Auf meinem Computer, mit simplejson 2.1.1 und Python 2.7 x86).

Wenn Sie möchten, können Sie den Benchmark ausprobieren: http://abral.altervista.org/jsonpickle-bench.zip Auf meinem PC ist simplejson schneller als cPickle. Ich würde gerne auch Ihre Benchmarks kennen!

Wahrscheinlich, wie Coady sagte, ist der Unterschied zwischen simplejson und json, dass simplejson _speedups.c enthält. Warum also verwenden Python-Entwickler nicht simplejson?

2voto

voidnologo Punkte 915

In Python3, wenn Sie eine Zeichenfolge von b'bytes' , mit json müssen Sie .decode() den Inhalt, bevor Sie ihn laden können. simplejson kümmert sich darum, so dass Sie nur noch simplejson.loads(byte_string) .

0voto

BeeLabeille Punkte 164

Ich stieß auf diese Frage, als ich suchte, um simplejson für Python 2.6 zu installieren. Ich musste den 'object_pairs_hook' von json.load() verwenden, um eine json-Datei als OrderedDict zu laden. Da ich mit neueren Versionen von Python vertraut bin, war mir nicht klar, dass das json-Modul für Python 2.6 den 'object_pairs_hook' nicht enthält, so dass ich für diesen Zweck simplejson installieren musste. Aus persönlicher Erfahrung ist dies der Grund, warum ich simplejson im Gegensatz zum Standard json-Modul verwende.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X