কম্পিউটার

পাইথন JSON

JSON হল একটি জনপ্রিয় ডেটা ফর্ম্যাট যা স্ট্রাকচার্ড ডেটা সংরক্ষণের জন্য ব্যবহৃত হয়।

আপনি যখন পাইথনে একটি অ্যাপ্লিকেশন তৈরি করছেন, তখন আপনি সিদ্ধান্ত নিতে পারেন যে আপনি আপনার অ্যাপে JSON ব্যবহার করতে চান। উদাহরণস্বরূপ, আপনি একটি JSON ফাইল থেকে ডেটা পড়তে চাইতে পারেন, বা JSON ফর্ম্যাটে সংরক্ষিত ডেটা একটি ফাইলে লিখতে পারেন।

এই নির্দেশিকায়, আমরা JSON ডেটা বিন্যাসের মূল বিষয়গুলি, পাইথন json মডিউলটি কীভাবে ব্যবহার করতে হয় এবং পাইথনে JSON-এর সাথে কীভাবে কাজ করতে হয় তা ভাঙ্গতে যাচ্ছি। এই টিউটোরিয়ালটি পড়ার শেষে, আপনি আপনার পাইথন প্রোগ্রামগুলিতে JSON ব্যবহারে একজন বিশেষজ্ঞ হয়ে উঠবেন!

JSON কি?

JSON, যা জাভাস্ক্রিপ্ট অবজেক্ট নোটেশনের জন্য সংক্ষিপ্ত, একটি ডেটা বিন্যাস যা আপনাকে স্ট্রাকচার্ড ডেটা সংরক্ষণ করতে দেয়।

প্রায়শই, JSON একটি ওয়েব অ্যাপ্লিকেশনে একটি সার্ভারে এবং থেকে ডেটা পাঠাতে ব্যবহৃত হয়। আপনি হয়তো দেখেছেন যে, অনেক API যেমন Fitbit API, বা Google Maps API JSON ফর্ম্যাটে ডেটা ফেরত দেয়

এর কারণ হল JSON ডেটা প্রমিত, কাঠামোবদ্ধ এবং পড়া সহজ।

এখানে পাইথনে একটি JSON রেকর্ডের একটি উদাহরণ রয়েছে:

{
	"name": "James Smith",
	"id": 202,
	"probation": False
}

এই রেকর্ডটি তিনটি কী সঞ্চয় করে, যা কোলনগুলির বাম দিকে থাকে (:), এবং তিনটি মান, যা কোলনের ডানদিকে সংরক্ষণ করা হয়। প্রতিটি কী একটি মানের সাথে আবদ্ধ।

81% অংশগ্রহণকারী বলেছেন যে তারা বুটক্যাম্পে যোগ দেওয়ার পরে তাদের প্রযুক্তিগত কাজের সম্ভাবনা সম্পর্কে আরও আত্মবিশ্বাসী বোধ করেছেন। আজই একটি বুটক্যাম্পের সাথে মিলিত হন৷

গড় বুটক্যাম্প গ্র্যাড একটি বুটক্যাম্প শুরু করা থেকে শুরু করে তাদের প্রথম চাকরি খোঁজা পর্যন্ত ক্যারিয়ারের পরিবর্তনে ছয় মাসেরও কম সময় ব্যয় করেছে।

JSON ডেটা বিন্যাসকে একটি অভিধানের সাথে বিভ্রান্ত করা উচিত নয়। যদিও এটি দেখতে একটি অভিধানের মতো হতে পারে, JSON একটি ডেটা ফর্ম্যাট, যেখানে একটি অভিধান একটি ডেটা কাঠামো৷

এর মানে হল, আপনি যদি আপনার JSON ডেটা একটি অভিধানে সংরক্ষণ করতে চান, তাহলে আপনাকে এটিকে একটি অভিধানে রূপান্তর করতে হবে; আপনি যদি একটি অভিধানকে JSON হিসাবে সংরক্ষণ করতে চান তবে আপনাকে এটি JSON-এ রূপান্তর করতে হবে।

পাইথনে json আমদানি করুন

আপনি Python এ JSON অবজেক্টের সাথে কাজ শুরু করার আগে, আপনাকে Python json মডিউল আমদানি করতে হবে। এই মডিউলটিতে অনেকগুলি ফাংশন রয়েছে যা আপনাকে JSON ডেটার সাথে কাজ করতে দেয়৷

JSON মডিউল আমদানি করতে, আপনি এই বিবৃতিটি ব্যবহার করতে পারেন:

import json

এখন আমরা আপনার কোডে JSON মডিউল আমদানি করেছি, আমরা এর ফাংশনগুলির সাথে কাজ শুরু করতে পারি।

পাইথনে JSON পার্স করুন

JSON ডেটার সাথে কাজ করার সময় আপনাকে যে সবচেয়ে গুরুত্বপূর্ণ ফাংশনগুলি সম্পাদন করতে হবে তা হল একটি অভিধানে JSON পার্স করা।

একটি অভিধানে JSON পার্স করতে, আপনি json.loads() ব্যবহার করতে পারেন পদ্ধতি

json.loads() একটি প্যারামিটার গ্রহণ করে:JSON স্ট্রিংটি আপনি একটি অভিধানে রূপান্তর করতে চান।

ধরুন আপনার কাছে একটি JSON স্ট্রিং রয়েছে যা একটি প্রকৌশল দলে কোডারকে বরাদ্দ করা প্রকল্পগুলির তথ্য সংরক্ষণ করে। আপনি একটি অভিধানে যে JSON স্ট্রিং রূপান্তর করতে চান. এটি করতে, আপনি এই কোড ব্যবহার করতে পারেন:

import json

employee = "{'name': 'Linda Richardson', 'projects': ['Directory', 'Homepage']}"
employee_dictionary = json.loads(employee)

print(employee_dictionary)
print(employee_dictionary["name"])

আমাদের কোড ফিরে আসে:

{'নাম':'লিন্ডা রিচার্ডসন', 'প্রকল্প':['ডিরেক্টরি', 'হোমপেজ']}

লিন্ডা রিচার্ডসন

আসুন আমাদের কোড ভাঙ্গা যাক। প্রথমত, আমরা আমাদের কোডে json মডিউল আমদানি করি। তারপর, আমরা employee নামে একটি স্ট্রিং ঘোষণা করি যা একটি JSON কাঠামোতে আমাদের কর্মচারী রেকর্ড সংরক্ষণ করে।

এরপর, আমরা json.loads() ব্যবহার করি আমাদের employee রূপান্তর করতে JSON-এ স্ট্রিং। তারপর, আমরা কনসোলে আমাদের নতুন অভিধান প্রিন্ট করি। আমরা name এর মানও প্রিন্ট করি কনসোলের চাবি।

আপনি দেখতে পাচ্ছেন, আমাদের অভিধান দেখতে আমাদের JSON স্ট্রিংয়ের মতোই। কিন্তু, এখন আমাদের তথ্য একটি অভিধান হিসাবে সংরক্ষণ করা হয়. আমরা বলতে পারি কারণ, যখন আমরা "নাম" কীটির মান প্রিন্ট করি, তখন "লিন্ডা রিচার্ডসন" কনসোলে মুদ্রিত হয়।

অভিধানকে JSON স্ট্রিং-এ রূপান্তর করুন

আপনি যখন একটি অভিধানের সাথে কাজ করছেন, আপনি এটিকে JSON স্ট্রিংয়ে রূপান্তর করতে চাইতে পারেন।

এটি একটি সাধারণ অপারেশন কারণ, যেহেতু আপনি একটি ফাইলে একটি JSON মান সংরক্ষণ করেন, এটি একটি স্ট্রিং হিসাবে ফর্ম্যাট করা প্রয়োজন৷ একটি অভিধানকে JSON-এ রূপান্তর করতে, আমরা json.dumps() ব্যবহার করতে পারি পদ্ধতি

ধরুন আমরা একজন কর্মচারী সম্পর্কে তথ্য সহ একটি অভিধানকে JSON স্ট্রিংয়ে রূপান্তর করতে চাই। আমরা এই কোড ব্যবহার করে তা করতে পারি:

import json

employee = {
	"name": "Linda Richardson",
	"id": 107,
	"probation": False,
	"department": "Sales"
}

employee_json = json.dumps(employee)
print(employee_json)

আমাদের কোড ফিরে আসে:

'{"নাম":"লিন্ডা রিচার্ডসন", "আইডি":107, "প্রবেশ":মিথ্যা, "বিভাগ":"বিক্রয়"}'

যদিও আমাদের কোডের আউটপুট আমাদের আসল অভিধানের মতো দেখতে পারে, আমাদের অভিধান এখন একটি স্ট্রিং হিসাবে সংরক্ষণ করা হয়েছে।

একটি JSON স্ট্রিং ফর্ম্যাট করা

json.dumps() পদ্ধতিটি কয়েকটি পরামিতি সহ আসে যা আপনি পদ্ধতি দ্বারা তৈরি চূড়ান্ত স্ট্রিংটি পড়া সহজ করতে ব্যবহার করতে পারেন।

indent প্যারামিটার আপনাকে চূড়ান্ত JSON স্ট্রিং-এ প্রদর্শিত ইন্ডেন্টের সংখ্যা নির্ধারণ করতে দেয়। ধরুন আপনি আপনার JSON স্ট্রিং এর প্রতিটি লাইনে চারটি ইন্ডেন্ট যোগ করতে চান। আপনি নিম্নলিখিত json.dumps() ব্যবহার করে তা করতে পারেন বিবৃতি:

employee_json = json.dumps(employee, indent=4)

এই বিবৃতি, আমাদের শেষ উদাহরণের সাথে মিলিত হলে, ফিরে আসবে:

{
    "name": "Linda Richardson",
    "id": 107,
    "probation": false,
    "department": "Sales"
}

এছাড়াও আপনি JSON স্ট্রিং-এ ডেটার বিভাজক পরিবর্তন করতে পারেন। বিভাজকগুলির জন্য ডিফল্ট মানগুলি হল “, ” এবং “:”, যার অর্থ হল প্রতিটি বস্তু একটি কমা ব্যবহার করে পৃথক করা হবে এবং প্রতিটি কী এবং মান একটি কোলন ব্যবহার করে পৃথক করা হবে।

ধরুন আমরা একটি সমান চিহ্ন (=) ব্যবহার করে আমাদের কী এবং মানগুলিকে আলাদা করতে চাই এবং আমরা 4 এর একটি ইন্ডেন্ট ব্যবহার করতে চাই৷ আমরা এই বিবৃতিটি ব্যবহার করে তা করতে পারি:

employee_json = json.dumps(employee, indent=4, separators=(", ", " = "))

আমাদের কোড ফিরে আসে:

{
    "name" = "Linda Richardson", 
    "id" = 107, 
    "probation" = false, 
    "department" = "Sales"
}

আপনি দেখতে পাচ্ছেন, আমাদের JSON স্ট্রিংয়ের প্রতিটি কী এবং মান এখন সমান চিহ্ন ব্যবহার করে আলাদা করা হয়েছে।

একটি JSON ফাইল পড়ুন

পাইথনে একটি JSON ফাইল পড়তে, আপনি json.load() ব্যবহার করতে পারেন . এই পদ্ধতিটি একটি প্যারামিটার গ্রহণ করে:ফাইল অবজেক্ট যা আপনি আপনার প্রোগ্রামে পড়তে চান।

ধরুন আমাদের কাছে employee.json নামে একটি ফাইল আছে যা আমরা আমাদের প্রোগ্রামে লোড করতে চাই। এই ফাইলের বিষয়বস্তু নিম্নরূপ:

{"name": "Linda Richardson", "id": 107, "probation": false}

আমরা এই কোড ব্যবহার করে তা করতে পারি:

{"name": "Linda Richardson", "id": 107, "probation": false}

We could do so using this code:

import json

with open('employee.json') as final_file:
	employee = json.load(final_file)

print(employee)

আমাদের কোড ফিরে আসে:

{"নাম":"লিন্ডা রিচার্ডসন", "আইডি":107, "প্রবেশ":মিথ্যা}

এই কোডে, আমরা প্রথমে json লাইব্রেরি আমদানি করি। তারপর, আমরা একটি with ব্যবহার করি আমাদের employee.json পড়ার বিবৃতি ফাইল আমরা json.load() ব্যবহার করি file-এ সংরক্ষিত আমাদের ফাইলের বিষয়বস্তু রূপান্তর করার পদ্ধতি পরিবর্তনশীল, একটি অভিধানে। তারপর, আমরা আমাদের অভিধানের মান প্রিন্ট আউট.

একটি ফাইলে JSON লিখুন

আপনি json.dump() ব্যবহার করতে পারেন পাইথনে একটি ফাইলে JSON লেখার পদ্ধতি।

json.dump() পদ্ধতি দুটি পরামিতি গ্রহণ করে:আপনি একটি ফাইলে যে অভিধানটি লিখতে চান এবং যে ফাইলটি আপনি আপনার অভিধান লিখতে চান।

ধরুন আমরা একটি ফাইলে JSON মান হিসাবে আমাদের কর্মচারীর রেকর্ড সংরক্ষণ করতে চাই। এই ফাইলের নাম linda_employee.json হওয়া উচিত . আমরা নিম্নলিখিত কোড ব্যবহার করে তা করতে পারি:

import json

employee = {
	"name": "Linda Richardson",
	"id": 107,
	"probation": False,
	"department": "Sales"
}

with open('linda_employee.json', 'w') as final_file:
	json.dump(employee, final_file)

আসুন আমাদের কোড ভাঙ্গা যাক। প্রথমত, আমরা আমাদের প্রোগ্রামে json মডিউল আমদানি করি। তারপর, আমরা একটি ভেরিয়েবল ঘোষণা করি যা একটি অভিধান কাঠামোতে লিন্ডা রিচার্ডসন নামক একজন কর্মচারী সম্পর্কে তথ্য সংরক্ষণ করে।

এরপর, আমরা linda_employee.json নামে একটি ফাইল প্রস্তুত করতে "w" পতাকা সহ একটি "with" বিবৃতি ব্যবহার করি যা আমরা লিখতে পারি। তারপর আমরা json.dump() ব্যবহার করি আমাদের employee রূপান্তর করতে একটি JSON স্ট্রিং-এ অভিধান এবং আমাদের final_file এ সংরক্ষণ করতে বস্তু

যখন এই প্রোগ্রামটি চালানো হয়, তখন আমাদের employee বিষয়বস্তু অভিধান linda_employee.json-এ লেখা ফাইল এই ফাইলের চূড়ান্ত বিষয়বস্তু হল:

{"name": "Linda Richardson", "id": 107, "probation": false, "department": "Sales"}

উপসংহার

Python json মডিউল আপনাকে JSON ডেটা পড়তে এবং ম্যানিপুলেট করতে দেয়।

json মডিউল ব্যবহার করে, আপনি করতে পারেন:

  • একটি ফাইল থেকে JSON পড়ুন
  • একটি অভিধানকে JSON-এ রূপান্তর করুন
  • JSON কে একটি অভিধানে রূপান্তর করুন
  • একটি ফাইলে একটি JSON স্ট্রিং লিখুন

এই টিউটোরিয়ালে, আমরা json মডিউল ব্যবহার করে কিভাবে এই সমস্ত ক্রিয়াকলাপ সম্পাদন করতে হয় তা অনুসন্ধান করেছি। এখন আপনি পেশাদারের মতো পাইথনে JSON ডেটা নিয়ে কাজ শুরু করতে প্রস্তুত!


আপনি কি পাইথনে কোড করতে শিখতে আগ্রহী? ডাউনলোড করুন ফ্রি ক্যারিয়ার কর্ম অ্যাপ আজই শেখার শীর্ষস্থানীয় সংস্থানগুলি আনলক করতে এবং প্রশিক্ষণ প্রোগ্রামগুলি আবিষ্কার করতে যা আপনাকে পাইথনে দক্ষতা অর্জন করতে সহায়তা করতে পারে৷


  1. পাইথনে পরিসংখ্যানগত চিন্তাভাবনা

  2. পাইথনে জালিয়াতি সনাক্তকরণ

  3. পাইথনে সেন্সাস ডেটা বিশ্লেষণ করা হচ্ছে

  4. পাইথনে কীভাবে JSON পার্স করবেন