Python - json, ujson yoki orjson
Ibrohim BultakovBirinchi maqolam bo'lgani uchun xato kamchiliklar bo'lsa oldindan uzur so'rayman!
Xo'sh, ko'p dasturchilar JSON (JavaScript Object Notation) haqida eshitgan bo'lsalar kerak (Siz ham eshitgan bo'lsangiz kerak!).
Bugun siz bilan Python dasturlash tilining json (standart kutubxona) kutubxonasining o'rnini bosadigan ujson (UltraJSON) va orjson haqida gaplashamiz.
UltraJSON - bu Python (3.7+ uchun) bilan C tilida yozilgan tezkor JSON kodlovchi va dekodlovchi kutubxona.
orjson - bu Python uchun tezkor JSON kutubxonasi. U JSON uchun eng tezkor Python kutubxonasi sifatida baholanadi.
json, ujson va orjsonni taqqoslaydigan kod yozib ko'ramiz. Taqqoslash natijalari qiziqarli bo'ldi.
import json import ujson import orjson from time import time def main(func_name: str, dumps, loads): data: str = open('data.json').read() start_d: time = time() dumps(data) end_d: time = time() start_l: time = time() loads(data) end_l: time = time() print(f"{func_name} {end_d - start_d}s {end_l - start_l}s") print("Nomi dumps loads") main(func_name="json ", dumps=json.dumps, loads=json.loads) main(func_name="ujson ", dumps=ujson.dumps, loads=ujson.loads) main(func_name="orjson", dumps=orjson.dumps, loads=orjson.loads) # json faylni https://github.com/bultakov/json-ujson-orjson shu yerdan olishingiz mumkin.
Natija:
Xulosa
Ko'pgina hollarda siz boshqa kutubxonalarga bog'liqlikni olib tashlashni xoxlasangiz python standart json kutubxonasi bilan ishlashingiz mumkin. Agar siz ko'proq tezlikni xohlasangiz va yanada murakkab kod bilan ishlashga tayyor bo'lsangiz, unda siz orjson'dan foydalanishingiz mumkin.
Muallif: Ibrohim Bultakov
Github: https://github.com/bultakov/json-ujson-orjson
Savollarni shaxsiyga, @python_uz yoki @DjangoUzb guruhida yozavering.