Python JSON
JSON
нь мэдээлэл солилцох, хадгалах зориулалттай модуль юм.JSON
бол текст бөгөөд JavaScript-н тэмдэглэгээтэй бичигдсэн байдаг.
JSON in Python
Python нь JSON-н өгөгдөлтэй ажиллахын тулд json
нэртэй багцыг дуудна.
Жишээ нь:
import json
JSON-ийг ашиглах
JSON-г ашиглахын тулд json.load()
функцээр Pytho-д хөрвүүлж ашиглана.
Жишээ нь:
JSON -г Python-д хөрвүүлж үзье
import json
# JSON-ийг X-д авч байна
x = '{ "нэр":"Дорж", "нас":37, "Дүүрэг":"Хан-Уул"}'
# x ийг Python -д шилжүүлж y-т утгыг хийж байна:
y = json.loads(x)
# үр дүн Python dictionary:
print (y["нас"])
Үр дүн
C:\Users\Pc Name>json.py
37
Python-г JSON-руу хөрвүүлж болно
Python-г Ч мөн адил json.dumps()
функцээр JSON-д хөрвүүлж болно.
Жишээ нь:
JSON -г Python-д хөрвүүлж үзье.
import json
# Python Dictionary
x = { "Нэр":"Дорж", "Нас":37, "Дүүрэг":"Хан-Уул"}
# x ийг JSON -д хөрвүүлж y-т утгыг хийж байна:
y = json.dumps(x)
# үр дүн Python dictionary:
print (y)
Үр дүн
C:\Users\Pc Name>json.py
{"Нэр": "Дорж", "Нас": 37, "Дүүрэг": "Хан-Уул"}
Бид Python-ийн доорх төрлийн объектуудыг JSON-д хөрвүүлж болно.
dict
list
tuple
string
int
float
True
False
None
Жишээ нь:
JSON -г Python-д хөрвүүлж үзье
import json
print (json.dumps({"Нэр": "Дорж", "Нас": 37}))
print (json.dumps(["Төмс", "Лууван"]))
print (json.dumps(("Алим", "Гадил")))
print (json.dumps("Баярллаа"))
print (json.dumps(37))
print (json.dumps(38.46))
print (json.dumps(True))
print (json.dumps(False))
print (json.dumps(None))
Үр дүн
C:\Users\Pc Name>json.py
{"Нэр": "Дорж", "Нас": 37}
["Төмс", "Лууван"]
["Алим", "Гадил"]
"Баярллаа"
37
38.46
true
false
null
Жишээ нь:
Бүх өгөгдлийн төрлийг агуулсан Python объектыг хөрвүүлж болно
import json
x = {
"нэр": "Золоо",
"нас": 37,
"Ажилдаг": True,
"Оюутан": False,
"Хүүхэд": ("Цэцэг","Болд"),
"Онгоц": None,
"Машин": [
{"Загвар": "Land 200", "Заалт": 27.5},
{"Загвар": "prius 50", "Заалт": 24.1}
]
}
print(json.dumps(x))
Үр дүн
C:\Users\Pc Name>json.py
{"нэр": "Золоо","нас": 37, "Ажилдаг": true, "Оюутан": False, "Хүүхэд": ["Цэцэг", "Болд"], "Онгоц": None, "Машин": [{"Загвар": "Land 200", "Заалт": 27.5}, {"Загвар": "prius 50", "Заалт": 24.1}]}
Үр дүнг форматлах
Дээрх жишээ нь JSON-д хөрвүүлсэн мөрийг хэвлэж байгаа боловч уншихад тийм ч хялбар биш байна.json.dumps()
функцэд үр дүнг уншихад хялбар болгох параметр байдаг.
Жишээ нь:
indent
параметрийг ашиглаж үзье.
import json
x = {
"нэр": "Золоо",
"нас": 37,
"Ажилдаг": True,
"Оюутан": False,
"Хүүхэд": ("Цэцэг","Болд"),
"Онгоц": None,
"Машин": [
{"Загвар": "Land 200", "Заалт": 27.5},
{"Загвар": "prius 50", "Заалт": 24.1}
]
}
print (json.dumps(x, indent = 4))
Үр дүн
C:\Users\Pc Name>json.py
{
"нэр": "Золоо",
"нас": 37,
"Ажилдаг": true,
"Оюутан": False,
"Хүүхэд": [
"Цэцэг",
"Болд"
],
"Онгоц": Null,
"Машин": [
{
"Загвар": "Land 200",
"Заалт": 27.5
},
{
"Загвар": "prius 50",
"Заалт": 24.1
}
]
}
Тогтмол тусгаарлагч болох (",", ":")-г бид өөрчлөх боломжтой, Үүнийг separators
түлхүүр үг ашиглан анхны separators-н утгыг өөрчилж болно.
Жишээ нь:
separators
параметрээр /Анхны Separators/ буюу анхны утгыг сольж үзье
import json
x = {
"нэр": "Золоо",
"нас": 37,
"Ажилдаг": True,
"Оюутан": False,
"Хүүхэд": ("Цэцэг","Болд"),
"Онгоц": None,
"Машин": [
{"Загвар": "Land 200", "Заалт": 27.5},
{"Загвар": "prius 50", "Заалт": 24.1}
]
}
print (json.dumps(x, indent = 4), separators = (".", " = "))
Үр дүн
C:\Users\Pc Name>json.py
{
"нэр" = "Золоо".
"нас" = 37.
"Ажилдаг" = true.
"Оюутан" = False.
"Хүүхэд" = [
"Цэцэг".
"Болд"
].
"Онгоц" = Null.
"Машин" = [
{
"Загвар" = "Land 200".
"Заалт" = 27.5
}.
{
"Загвар" = "prius 50".
"Заалт" = 24.1
}
]
}
Үр дүнг захиалах
json.dumps()
функц нь үр дүнг захиалсан түлхүүр үгийн дагуу утгыг буцаана.
Жишээ нь:
Параметрээр sort_keys
түлхүүр үгээр утга дамжуулан мэдээллийг эрэмбэлэн буцааж үзье.
import json
x = {
"name": "Золоо",
"age": 37,
"job": True,
"student": False,
"children": ("Цэцэг","Болд"),
"plane": None,
"car": [
{"Загвар": "Land 200", "Заалт": 27.5},
{"Загвар": "prius 50", "Заалт": 24.1}
]
}
print (json.dumps(x, indent = 4, sort_keys=True))
Үр дүн
C:\Users\Pc Name>json.py
{
"age": 37,
"car": [
{
"Загвар": "Land 200",
"Заалт": 27.5
},
{
"Загвар": "prius 50",
"Заалт": 24.1
}
]
"children": [
"Цэцэг",
"Болд"
],
"job": true,
"name": "Золоо",
"plane": Null,
"student": False,
}