آموزش پایتون

مدیریت فایل

JSON در پایتون

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

JSON متنی است که به روش نمادگذاری شیء در جاوا اسکریپت نوشته شده است.

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

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

مثال

وارد کردن (ایمپورت) ماژول json در پایتون:

				
					import json
				
			

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

JSON متنی است که به روش نمادگذاری شی در جاوا اسکریپت نوشته شده است.

تجزیه JSON - تبدیل از JSON به Python

اگر یک رشته JSON دارید، می توانید آن را با استفاده از متد 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

اگر یک شیء پایتون دارید، می توانید با استفاده از متد 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)
				
			
می توانید اشیاء پایتون از انواع زیر را به رشته های JSON تبدیل کنید:
  • dict
  • list
  • tuple
  • string
  • int
  • float
  • True
  • False
  • None

مثال

تبدیل اشیاء پایتون رشته های 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))
				
			

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

Python
JSON
dict (دیکشنری)
Object
list (لیست)
Array
tuple (تاپل)
Array
str (رشته)
String
int (اعداد صحیح)
Number
float (اعداد اعشاری)
Number
True
true
False
false
None
null

مثال

تبدیل یک شی پایتون حاوی تمام انواع داده های مجاز:
				
					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))
				
			

نوع نمایش نتیجه

مثال بالا یک رشته JSON را چاپ می کند، اما خواندن آن خیلی آسان نیست، بدون تورفتگی و شکستگی خط.

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

مثال

از پارامتر indent برای تعریف تعداد تورفتگی ها استفاده کنید:
				
					json.dumps(x, indent=4)
				
			
همچنین می‌توانید جداکننده‌ها را تعریف کنید، مقدار پیش‌فرض (“, “, “: “) است، به این معنی که از یک کاما و یک فاصله برای جدا کردن هر شی و یک دونقطه و یک فاصله برای جدا کردن کلیدها از مقادیر استفاده می شود:

مثال

از پارامتر separators برای تغییر جداکننده پیش فرض استفاده کنید:
				
					json.dumps(x, indent=4, separators=(". ", " = "))
				
			

ترتیب نمایش نتیجه

متد json.dumps() دارای پارامترهایی برای تنظیم ترتیب کلیدها در نتیجه است:

مثال

از پارامتر sort_keys برای تعیین اینکه آیا نتیجه باید مرتب شود یا خیر، استفاده کنید:
				
					json.dumps(x, indent=4, sort_keys=True)
				
			

آموزش پایتون

مدیریت فایل