دوره‌ها / آموزش پایتون (Python) / فرمت JSON (Python JSON)

فرمت JSON (Python JSON)

15 دقیقه Article

تبادل داده با فرمت JSON 🌐🔗

JSON (JavaScript Object Notation) زبان مشترک وب است. تقریباً تمام اپلیکیشن‌های موبایل و وب‌سایت‌ها داده‌های خود را در این قالب جابه‌جا می‌کنند. پایتون به دلیل شباهت زیاد دیکشنری‌هایش به JSON، بهترین زبان برای کار با این فرمت است.

۱. از وب به پایتون (Parsing JSON)

وقتی داده‌ای را به صورت رشته (String) از یک API دریافت می‌کنید، باید آن را قابل فهم برای پایتون کنید. متد json.loads() این کار را انجام می‌دهد.

import json
x = '{"name":"John", "age":30, "city":"New York"}'
y = json.loads(x)
print(y["name"])

۲. از پایتون به وب (Serialization)

زمانی که می‌خواهید داده‌های خود را به سرور بفرستید، باید دیکشنری پایتون را به یک رشته JSON تبدیل کنید. متد json.dumps() پاسخ شماست.

x = {"name":"John", "age":30}
y = json.dumps(x, indent=4, separators=(". ", " = "))
print(y)

۳. زیباسازی داده‌های حجیم 🎨

رشته‌های JSON معمولاً بدون فاصله و در یک خط هستند. برای اینکه بتوانید آن‌ها را دیباگ کنید، از پارامتر indent استفاده کنید:

json.dumps(obj, indent=4)
تفاوت دیتاتایپ‌ها: وقتی پایتون را به JSON تبدیل می‌کنید، انواع داده تغییر می‌کنند:
  • دیکشنری -> Object
  • لیست -> Array
  • تاپل -> Array
  • True -> true
  • None -> null
خطای اشتراک‌گذاری: یادتان باشد فایل‌های پایتون را نمی‌توان مستقیماً به جاوااسکریپت یا زبان‌های دیگر فرستاد. همیشه باید ابتدا به JSON تبدیل (Serialize) شوند.

تمرین‌های عملی

برای تثبیت یادگیری این درس تمرین‌های زیر را حل کنید

تبدیل دیکشنری به JSON Medium
سوال تمرین

یک دیکشنری پایتون را به رشته JSON تبدیل کرده و نتیجه را چاپ کنید.

پاسخ تمرین
PYTHON
import json
d = {'name': 'Alice', 'age': 25}
print(json.dumps(d))

آماده رفتن به درس بعدی هستید؟

این درس را به پایان رساندید و می‌توانید به درس بعدی بروید.