JSON (جیسون) در پایتون (Python)

JSON (جیسون) در پایتون (Python)

زمان مطالعه

5 دقیقه

تعداد بازدید

106

تعداد پرسش ها

0

افزودن به لیست علاقه مندی ها


برچسب ها :


اشتراک گذاری این مطلب
سامان محمدپور
در مورد نویسنده : موفقیت بستگی به تلاش هر شخص داره، هممون ب همون اندازه که تلاش کردیم موفق شدیم.

JSON (جیسون) در پایتون (Python)

JSON (جیسون) در پایتون (Python)

زمان مطالعه

5 دقیقه

تعداد بازدید

106

تعداد پرسش ها

0

افزودن به لیست علاقه مندی ها


برچسب ها :


اشتراک گذاری این مطلب

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

پایتون یک package داخلی به نام json برای کار با  داده های  JSON دارد که می توانیم از آن استفاده کنیم.

طریقه import  کردن آن را در زیر برای شما آورده ایم.

 

import json

 

تجزیه JSON – تبدیل از JSON به پایتون

اگر رشته JSON دارید می توانید با استفاده از متد ()json.loads آن را تجزیه کنید.

نکته: نتیجه آن یک Dictionary (فرهنگ لغت) پایتون خواهد بود.

مثال: در زیر ما با استفاده از متد ()json.loads داده JSON را به پایتون تبدیل کرده ایم.

 

import json
# some JSON:
x =  '{ "name":"John", "age":30, "city":"New York"}'
# parse x:
y = json.loads(x)
# the result is a Python dictionary:
print(y["age"])

 

تبدیل از JSON به پایتون (Python)

 

تبدیل از پایتون به JSON

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

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

 

import json
# a Python object (dict):
x = {
  "name": "John",
  "age": 30,
  "city": "New York"
}
# convert into JSON:
y = json.dumps(x)
# the result is a JSON string:
print(y)

 

تبدیل از پایتون (Python) به JSON

 

شما می توانید انواع اشیاء زیر در پایتون را به رشته JSON تبدیل کنید:

  • Dict
  • List
  • Tuple
  • String
  • Int
  • Float
  • True
  • False
  • None

مثال: در این مثال انواع اشیاء در پایتون را به رشته JSON تبدیل کرده و آن ها را در خروجی چاپ کرده است.

 

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) به JSON

 

وقتی داده ها را از پایتون به JSON تبدیل می کنید، نوع داده ای آن ها به معادل آن نوع داده ای در JSON (جاوااسکریپت) تبدیل می شود.

در جدول زیر معادل این تبدیل ها را برای شما لیست کرده ایم.

 

تبدیل داده از پایتون (Python) به JSON
پایتون JSON
dict object
list array
tuple array
str string
int number
float number
true true
false false
none null

 

مثال: در این مثال یک شی که شامل همه انواع داده ای است را از پایتون به JSON تبدیل کرده ایم.

 

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))

 

تبدیل از پایتون (Python) به JSON

 

قالب بندی کردن خروجی JSON

در مثال قبل ما یک خروجی JSON داریم اما خوانایی این خروجی بدون قالب بندی و تورفتگی دشوار، سخت و گیج کننده است.

متد ()json.dumps دارای تعدادی پارامتر است که با مشخص کردن آن ها می توانیم خروجی خوانا تر داشته باشیم.

پارامتر indent تعداد تورفتگی ها در خروجی JSON را مشخص می کند که در مثال زیر آن را مشاهده می کنید.

 

json.dumps(x, indent=4)

 

قالب بندی کردن خروجی JSON در پایتون (Python)

 

شما همچنین می توانید جدا کننده ها را نیز مشخص کنید. به طور پیش فرض پایتون از (“,” , “:”) استفاده می کند، به این معنی که برای جدا کردن هر شی از یک کاما و یک فاصله استفاده می کند و  برای جدا کردن کلید و مقدار از یک دو نقطه و یک فاصله استفاده می کند.

مثال: در زیر با استفاده از پارامتر separators برای تغییر مقادیر پیش فرض جدا کننده ها استفاده کرده ایم.

 

json.dumps(x, indent=4, separators=(". ", " = "))

 

قالب بندی کردن خروجی JSON در پایتون (Python)

 

مرتب سازی خروجی JSON

متد ()json.dumps دارای متدی است که می توانید مرتب سازی را بر اساس کلیدها در خروجی انجام دهید.

از پارامتر sort_keys می توانید برای انجام مرتب سازی بر اساس کلیدها استفاده کنید که مقدار true برای انجام آن و مقدار false برای نادیده گرفتن مرتب سازی است.

 

json.dumps(x, indent=4, sort_keys=True)

 

مرتب سازی خروجی JSON در پایتون (Python)

 

خب در این قسمت با مبحث JSON در پایتون هم آشنا شدید و می توانید برای تبادل داده ها از زبان های دیگر به پایتون و یا بلعکس از آن استفاده کنید.

در قسمت بعدی در مورد RegEx یا عبارات منظم در پایتون با شما حرف خواهیم زد.

سامان محمدپور
در مورد نویسنده : موفقیت بستگی به تلاش هر شخص داره، هممون ب همون اندازه که تلاش کردیم موفق شدیم.

پرسش و پاسخ
0
دوره پیشنهادی
دوره پیشنهادی