بکندباز

خواندن و نوشتن JSON در یک فایل در پایتون

فرم کامل JSON عبارت است از Javascript Object Notation. به این معنی که یک فایل اسکریپت (قابل اجرا) در یک زبان برنامه نویسی که از متن ساخته شده است، برای ذخیره و انتقال داده ها استفاده می شود. پایتون از طریق یک پکیج داخلی به نام JSON از JSON پشتیبانی می کند . برای استفاده از این ویژگی، پکیج JSON را در اسکریپت پایتون وارد می کنیم. متن در JSON از طریق quoted-string (عبارت های احاطه شده با کوتیشن) که حاوی جفت مقدار “کلید-مقدار” است، در {} نوشته می شود. مشابه دیکشنری در پایتون.

نوشتن JSON در یک فایل در پایتون

“سریال سازی JSON” به تبدیل داده ها به یک سری بایت برای ذخیره یا انتقال در یک شبکه اشاره دارد. برای مدیریت جریان داده در یک فایل، کتابخانه JSON در پایتون از تابع dump()‎ یا dumps()‎ برای تبدیل اشیاء پایتون به شی JSON مربوطه خود استفاده می کند، و بنابراین نوشتن داده ها در فایل ها را آسان می کند. جدول زیر را در زیر مشاهده کنید.

شیء پایتون شیء مربوطه در JSON
Dict object
list, tuple array
str string
int, long, float numbers
True true
False false
None null

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

پکیج JSON در پایتون تابعی به نام json.dumps()‎ دارد که به تبدیل دیکشنری به شی JSON کمک می کند. دو پارامتر نیاز دارد:

  • dictionary – نام دیکشنری که باید به یک شی JSON تبدیل شود.
  • indent – تعداد واحدهای تورفتگی را مشخص می کند

پس از تبدیل دیکشنری به یک شی JSON، به سادگی آن را با استفاده از تابع “write” در یک فایل بنویسید.

import json

# Data to be written
dictionary = {
	"name": "sathiyajith",
	"rollno": 56,
	"cgpa": 8.6,
	"phonenumber": "9976770500"
}

# Serializing json
json_object = json.dumps(dictionary, indent=4)

# Writing to sample.json
with open("sample.json", "w") as outfile:
	outfile.write(json_object)

خروجی:

روش 2: نوشتن JSON روی یک فایل در پایتون با استفاده از json.dump()‎

روش دیگر برای نوشتن JSON در یک فایل، استفاده از روش json.dump()‎ است. پکیج JSON دارای تابع “dump” است که مستقیماً دیکشنری را در یک فایل به شکل JSON می‌نویسد، بدون اینکه نیازی به تبدیل آن به یک شی JSON واقعی باشد. . 2 پارامتر می گیرد:

  • dictionary – نام دیکشنری که باید به یک شی JSON تبدیل شود.
  • file pointer – نشانگر فایل باز شده در حالت نوشتن (w) یا الحاق (a).
# Python program to write JSON
# to a file


import json

# Data to be written
dictionary = {
	"name": "sathiyajith",
	"rollno": 56,
	"cgpa": 8.6,
	"phonenumber": "9976770500"
}

with open("sample.json", "w") as outfile:
	json.dump(dictionary, outfile)

خروجی:

خواندن JSON از یک فایل با استفاده از پایتون

Deserialization برعکس Serialization است، یعنی تبدیل اشیاء JSON به اشیاء پایتون مربوطه خود. از متد load()‎ برای آن استفاده می شود. اگر از داده‌های JSON از برنامه دیگری استفاده کرده‌اید یا آن را به‌عنوان یک رشته‌ با قالب JSON ذخیره کرده اید، می‌توان آن را به راحتی با load()‎، از حالت سریال خارج کرد و به یک دیکشنری تبدیل کرد.

خواندن JSON از یک فایل با استفاده از json.load()‎

پکیج JSON دارای تابع json.load()‎ است که محتوای JSON را از یک فایل JSON به یک دیکشنری بارگیری می کند.

  • File pointer: نشانگر فایلی که به فایل JSON اشاره می کند.
import json

# Opening JSON file
with open('sample.json', 'r') as openfile:

	# Reading from json file
	json_object = json.load(openfile)

print(json_object)
print(type(json_object))

خروجی:

 

zohreh

مدیر وب سایت بکندباز

دیدگاه‌ها

*
*

    کدرلایف پاسخ

    ممنون از این مقاله کاربردی