جیسون (JSON)
«جیسون (JSON)» یک فرمت متنی ساده برای ذخیره و جابه جایی داده است. «پارْس (Parse)» یعنی تبدیل متن JSON به شیء پایتون. با ماژول json این کارها خیلی راحت می شود؛ مثل کارنامه دیجیتال مدرسه.
JSON در پایتون
پایتون بسته داخلی json دارد. اول آن را وارد کن.
import json
پارس JSON ← تبدیل به پایتون
json.loads() متن JSON را به «دیکشنری (Dictionary)» تبدیل می کند.
import json
x = "{ \"name\": \"John\", \"age\": 30, \"city\": \"New York\" }"
y = json.loads(x)
print(y["age"])
تبدیل پایتون → JSON
json.dumps() شیء پایتون را به متن JSON تبدیل می کند.
import json
x = {
"name": "John",
"age": 30,
"city": "New York"
}
y = json.dumps(x)
print(y)
نوع های قابل تبدیل: dict، list، tuple، رشته، عدد، True/False و None.
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))
خروجی خواناتر با قالب بندی
با پارامتر indent تورفتگی بده. خوانایی بهتر می شود.
import json
x = {"a": 1, "b": 2}
print(json.dumps(x, indent=4))
با separators جداکننده ها را عوض کن؛ برای نمایش فشرده یا سفارشی.
import json
x = {"a": 1, "b": 2}
print(json.dumps(x, indent=4, separators=(". ", " = ")))
مرتب سازی کلیدها
با sort_keys=True کلیدها به ترتیب حروفی می آیند.
import json
x = {"b": 2, "a": 1}
print(json.dumps(x, indent=4, sort_keys=True))
گام های عملی
- یک رشته JSON بساز و با
loadsپارس کن. - یک دیکشنری بساز و با
dumpsتبدیلش کن. indentوsort_keysرا امتحان کن.
جمع بندی سریع
loads← متن JSON به شیء پایتون.dumps← شیء پایتون به متن JSON.indentبرای خوانایی بهتر است.sort_keysکلیدها را مرتب می کند.
نکته: برای مبانی عددی، فصل ریاضی خوب است. برای الگوها بعداً به عبارات باقاعده برو. همچنین لینک جیسون پایتون را برای مرور نگه دار.