آموزش جی سان در پایتون

برنامه نویسی

آموزش جی سان در پایتون

json یک سینتکس برای ذخیره و تبادل داده است.

JSON مخفف JavaScript Object Notation به معنی نشانه‌گذاری شیء جاوااسکریپت است و به صورت جی‌سان تلفظ می شود(برخی جیسون نیز تلفظ می‌کنند). یک استاندارد باز متنیِ سبک برای انتقال داده‌ها است به گونه‌ای که برای انسان نیز خوانا باشد. جی‌سان از زبان اسکریپت‌نویسی جاوااسکریپت در نشان‌دادن ساختمان داده‌های ساده و آرایه‌های انجمنی مشتق شده‌است. با وجود ارتباط عمیقی که با جاوااسکریپت دارد، جی‌سان مستقل از زبان است و مفسرهایش تقریباً برای هر زبانی موجود هستند.
قالب جی‌سان در ابتدا توسط داگلاس کراکفورد مشخص و در RFC‍۴۶۲۷ شرح داده شده‌است. نوع رسانهٔ اینترنتی رسمی آن، application/json و پسوند فایل‌های جی‌سان ‎.json است.

ویکی‌پدیا

از جی سان معمولا برای انتقل داده بین یک سرویس دهنده و سرویس گیرنده استفاده می‌شود. معمولا API‌ها داده‌های درخواستی اپلیکشن‌ها(وب سایت، اپ موبایل و …) را به در فرمت جی سان بر می‌گرداند.

انواع داده و سینتکس یا دستورزبان جی‌سان

هدف ما در این مقاله بررسی کامل نحو و انواع داده‌ای جی‌سان نیست اما در حد آشنایی آن را بررسی می‌کنیم.

نوع داده‌ها در جی‌سان

  • اعداد (صحیح یا حقیقی)
  • رشته (یونی‌کدهایی که با «”» محصور شده…)
  • مقدار بولی (true یا false، درست یا نادرست)
  • آرایه (دنبالهٔ دارای ترتیبی از مقدارها، جدا شده با ویرگول (,) و محصور شده با «[» و «]»)
  • شیء (مجموعه‌ای از جفت‌های کلید مقداری که جدا شده با ویرگول (,) و محصور شده با «{» و «}»، کلیدها حتما باید رشته باشند)
  • تهی یا null

نمونهٔ زیر یک شیء در جی‌سان است که یک شخص را شرح می‌دهد. در این شیء نوع داده‌ای متنی برای نام و نام خانوادگی، نوع داده‌ای عددی برای سن، یک شیء برای ذخیرهٔ نشانی فرد و یک فهرست (یک آرایه) برای ذخیرهٔ شماره‌های تلفن شخص است.

{
    "firstName": "John",
    "lastName": "Smith",
    "age": 25,
    "address": {
        "streetAddress": "21 2nd Street",
        "city": "New York",
        "state": "NY",
        "postalCode": "10021"
    },
    "phoneNumber": [
        {
            "type": "home",
            "number": "212 555-1234"
        },
        {
            "type": "fax",
            "number": "646 555-4567"
        }
    ]
}

جی سان یا جیسون در پایتون

پایتون یک پکیج داخلی برای کار با داده‌های جی سان دارد که نام آن json است. برای کار با این پکیج ابتدا باید ماژول آن را به صورت زیر ایمپورت نمایید.

>>> import json

تجزیه جیسون در پایتون

اگر یک داده رشته‌ای با فرمت جیسون داشت باشید می‌توانید با استفاده از تابع loads که در کلاس json تعریف شده است آن را تجزیه کنید. در اینجا منظور از تجزیه تبدیل جی‌سان به یک نوع داده‌ی معتبر در پایتون است.

تابع loads در پایتون رشته‌ی دریافتی را به یک دیکشنری تبدیل می‌کند.

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

تبدیل داده‌های پایتون به فرمت جی‌سان

اگر شما در پایتون یک شی داشته باشید می‌توانید با استفاده از تابع dumps که در کلاس json تعریف شده است آن را به جی‌سان تبدیل کنید. ما در تکه کد زیر یک دیکشنری را به یک 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 JSON
>>> print(y)
{"name": "John", "age": 30, "city": "New York"}

منبع: w3school

بدون دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

سازمان یادگیرنده
اخبار ایران تکنولوژی
کارت ویزیت دیجیتال

دیگر نیازی به چاپ صدها کارت ویزیت (که به زودی دور ریخته می شوند) ندارید،یک بار برای همیشه از هزینه های چاپ راحت شوید، علاوه بر این نیاز شما را به وب سایت تا حد زیادی برطرف می کنیم و از هزینه های هاست، دامنه، طراحی و سئو وب سایت معاف می شوید.

اخبار ایران تکنولوژی
ثبت شکایت از کسب و کارهای اینترنتی فقط با اطلاعات پرداخت

از ابتدای اردیبهشت ماه 1401، ثبت شکایت از کسب و کارهای اینترنتی صرفاً بر مبنای اطلاعات تراکنش پرداخت امکان ‌پذیر خواهد بود. همچنین مصرف‌ کنندگان محترم می ‌توانند جهت تسریع در حصول نتیجه نهایی، از درخواست داوری در سامانه استفاده نمایند.

اخبار ایران تکنولوژی
چگونه از نشت اطلاعات سازمان ها و کسب و کار ها جلوگیری کنیم؟

وقوع رخدادهای متعدد نشت اطلاعات از پایگاه‌های داده‌ی شرکت‌ها و سازمان‌های دولتی و خصوصی در فضای مجازی ‌عمدتا متاثر از فهرست مشترکی از خطاها و ضعف‌های امنیتی در پیاده‌سازی و تنظیمات است.