JSON
JSON Nima?
JSON ma'lumotlarni saqlash va almashish uchun sintaksisdir.
JSON - bu JavaScript obyekt notatsiyasi bilan yozilgan matn.
Python'da JSON
Python'da JSON ma'lumotlari bilan ishlash uchun ishlatiladigan json nomli ichki paket mavjud.
Misol
json modulini import qiling:
import jsonJSON-ni Tahlil Qilish - JSON-dan Python-ga O'tkazish
Agar sizda JSON satri bo'lsa, uni json.loads() metodidan foydalanib tahlil qilishingiz mumkin.
Natija Python lug'ati bo'ladi.
Misol
JSON-dan Python-ga o'tkazish:
import json
# JSON namunasi:
x = '{"name":"John", "age":30, "city":"New York"}'
# x ni tahlil qilish:
y = json.loads(x)
# natija Python lug'ati:
print(y["age"])Python-dan JSON-ga O'tkazish
Agar sizda Python obyekti bo'lsa, uni json.dumps() metodidan foydalanib JSON satriga aylantirishingiz mumkin.
Misol
Python-dan JSON-ga o'tkazish:
import json
# Python obyekti (lug'at):
x = {
"name": "John",
"age": 30,
"city": "New York"
}
# JSON-ga aylantirish:
y = json.dumps(x)
# natija JSON satri:
print(y)Siz quyidagi Python obyekt turlarini JSON satrlariga aylantirishingiz mumkin:
dictlisttuplestringintfloatTrueFalseNone
Misol
Python obyektlarini JSON satrlariga aylantirib, qiymatlarni chop etish:
import json
print(json.dumps({"name": "John", "age": 30}))
print(json.dumps(["apple", "bananas"]))
print(json.dumps(("apple", "bananas")))
print(json.dumps("hello"))
print(json.dumps(42))
print(json.dumps(31.76))
print(json.dumps(True))
print(json.dumps(False))
print(json.dumps(None))Python-dan JSON-ga aylantirganda, Python obyektlari JSON (JavaScript) ekvivalentiga aylantiriladi:
| Python | JSON |
|---|---|
| dict | Object |
| list | Array |
| tuple | Array |
| str | String |
| int | Number |
| float | Number |
| True | true |
| False | false |
| None | null |
Misol
Barcha qonuniy ma'lumot turlarini o'z ichiga olgan Python obyektini aylantirish:
import json
x = {
"name": "John",
"age": 30,
"married": True,
"divorced": False,
"children": ("Ann", "Billy"),
"pets": None,
"cars": [
{"model": "BMW 230", "mpg": 27.5},
{"model": "Ford Edge", "mpg": 24.1}
]
}
print(json.dumps(x))Natijani Formatlash
Yuqoridagi misol JSON satrini chop etadi, lekin u juda oson o'qilmaydi, chunki unda joy tashlash va qator tanaffuslari yo'q.
json.dumps() metodi natijani o'qishni osonlashtirish uchun parametrlarga ega:
Misol
indent parametridan foydalanib, joy tashlashlar sonini belgilang:
json.dumps(x, indent=4)Shuningdek, ajratgichlarni belgilashingiz mumkin, standart qiymat (", ", ": ") bo'lib, bu har bir obyektni vergul va bo'sh joy bilan ajratishni, kalitlarni qiymatlardan ikki nuqta va bo'sh joy bilan ajratishni anglatadi:
Misol
separators parametridan foydalanib, standart ajratgichni o'zgartiring:
json.dumps(x, indent=4, separators=(". ", " = "))Natijani Tartiblash
json.dumps() metodi natijadagi kalitlarni tartiblash uchun parametrlarga ega:
Misol
sort_keys parametridan foydalanib, natija tartiblanishi kerakligini yoki yo'qligini belgilang:
json.dumps(x, indent=4, sort_keys=True)