Сериализация и десериализация
Python обектът се превежда в JSON обект чрез сериализация, а JSON обектът се преобразува в Python обект чрез десериализация. Следващата таблица показва как Python обектите се преобразуват в JSON обекти или обратно по време на сериализация и десериализация.
JSON | Python |
вярно | вярно |
невярно | невярно |
низ | низ |
номер | номер |
масив | списък, кортеж |
обект | дикт |
нула | нито един |
Методи:
load (): Този метод се използва за зареждане на данни от JSON файл в python dict.
Loads (): Този метод се използва за зареждане на данни от JSON променлива в python dict.
dump (): Този метод се използва за зареждане на данни от речника на python в JSON файла.
dumps (): Този метод се използва за зареждане на данни от речника на python в променливата JSON.
Четене на JSON данни с помощта на Python
JSON данните могат да бъдат анализирани и обработвани по различни начини с помощта на Python скрипт. Как могат да бъдат анализирани различни типове JSON данни, са показани в тази част с помощта на различни примери на Python. Създайте прост json файл с име студент.json със следните данни, за да тествате скриптовете на този урок.
["ID": "1110978", "Name": "Alif al Razi", "Batch": "34", "Semester": "8","Отдел": "CSE",
"ID": "2220998", "Name": "Nusrat Faria", "Batch": "23", "Semester": "9",
"Отдел": "BBA",
"ID": "1118934", "Име": "Emran Hossain", "Партида": "33", "Семестър": "7",
"Отдел": "CSE",
"ID": "4448934", "Name": "Rehana Akter", "Batch": "41", "Semester": "10",
"Отдел": "ENG",
"ID": "11107745", "Name": "Saif Ali", "Batch": "39", "Semester": "5",
"Отдел": "CSE"]
Пример 1: Прочетете и отпечатайте JSON файл във формат JSON
Създайте python файл с име json1.py със следния скрипт. Модулът JSON се използва за четене на всички данни на JSON с помощта на python скрипт. отворен () метод се използва за четене студент.json файл и зареждане () метод се използва за съхраняване на данните в променливата, данни.
# Импортиране на JSON модулимпортиране json
# Отворете съществуващия JSON файл за зареждане в променлива
с отворен ('студент.json ') като f:
данни = json.натоварване (f)
# Отпечатайте JSON данните
печат (данни)
Изход:
След стартиране на скрипта ще се появи следният изход.
Пример 2: Прочетете и анализирайте данни от JSON файл, използвайки Python dict
JSON данните могат да се съхраняват във всяка променлива на речника на python, за да обработват всяка стойност на свойствата лесно по-късно. Създайте python скрипт с име json2.py със следния код. Тук се използва по-рано създаденият json файл. След зареждане на данните в речника, всяка стойност на свойството на всеки запис ще бъде отпечатана, като се използва името на свойството.
# Импортиране на json модулимпортиране json
# Отворете съществуващия json файл за зареждане в променлива
с отворен ('студент.json ',' r ') като f:
ученици = json.натоварване (f)
# Отпечатайте всяко свойство на обекта
за студент в студенти:
print (student ['Name'], ',', student ['Batch'], 'batch', ',', student ['Semester'],
'Семестър', ',', студент ['Отдел'], 'отдел')
Изход:
След стартиране на скрипта ще се появи следният изход.
Пример 3: Анализирайте JSON данни
JSON данните могат да бъдат анализирани от всяка JSON променлива. Създайте файл с име json3.py със следния скрипт. JSONData е деклариран тук за съхраняване на JSON данни за три свойства. товари () тук се използва метод за зареждане на данни от JSON променлива. След това всяка стойност на свойството с всяко име на свойство ще отпечатва ред по ред в терминала.
# Импортиране на json модулимпортиране json
# Дефинирайте json данни
JSONData = '"Java": "3 кредита", "PHP": "2 кредита", "C ++": "3 кредита"'
# Заредете json данните в променлива
съхранявани = json.товари (JSONData)
# Итерирайте цикъла for, за да отпечатате данните с ключ
за вал в съхраняваните данни:
отпечатване ("% s:% s"% (val, запазени данни [val]))
Изход:
След стартиране на скрипта ще се появи следният изход.
Пример 4: Анализирайте JSON данни в обект на Python
JSON данните се съхраняват в променлива на речника на python в предишните три примера на този урок. Този пример показва как можете да съхранявате JSON данни във всеки обект на python. Създайте файл с име json4.py със следния скрипт. Тук, read_data class се използва за съхраняване на JSON данни в обект. JSONData, променлива се използва при създаване на обекта на класа. Три свойства съществуват в JSONData и стойността на името на свойството, PHP ще се отпечата като изход.
# Импортиране на JSON модулимпортиране json
# Дефинирайте JSON данни
JSONData = '"Java": "3 кредита", "PHP": "2 кредита", "C ++": "3 кредита"'
# Декларирайте клас за съхраняване на JSON данни в речник на python
клас read_data (обект):
def __init __ (self, jdata):
себе си.__dict__ = json.товари (jdata)
# Присвояване на обект от класа
p_object = read_data (JSONData)
# Отпечатайте стойността на конкретно свойство
печат (p_object.PHP)
Изход:
Стойността на свойството „PHP“ е „2 кредита“. И така, след стартиране на скрипта ще се появи следният изход.
Пример 5: Преобразуване на Python dict в JSON данни
JSON данните се съхраняват в речника или обекта на Python в предишните примери, но данните от речника на python също могат да се съхраняват в JSON променлива. Създайте файл с име json5.py със следния скрипт. Данните се съхраняват в речника на променливата, customerDict. сметища () тук се използва метод за преобразуване на данните от речникова променлива в JSON променлива, jsonObject. След това стойността на променливата JSON се отпечатва като изход.
# Импортиране на JSON модулимпортиране json
# Декларирайте речник на python
customerDict = 'name': 'John', 'type': 'gold', 'age': 35
# Заредете данните от речника в JSON обект
jsonData = json.сметища (customerDict)
# Отпечатайте обекта JSON
печат (jsonData)
Изход:
След стартиране на скрипта ще се появи следният изход.
Заключение:
Форматът на данни JSON се поддържа от много езици за програмиране. Преобразуването на JSON в Python и python в JSON данни са обяснени в този урок с помощта на различни примери на python. Ще можете да извършите всякакъв вид преобразуване на данни от python обект в JSON обект или обратно, след като практикувате този урок.