কম্পিউটার

পাইথনে JSON ফরম্যাটিং


JSON (জাভা স্ক্রিপ্ট অবজেক্ট নোটেশন) হল হালকা ওজনের, ভালভাবে গৃহীত ডেটা ইন্টারচেঞ্জ ফরম্যাট। পাইথনে JSON ফর্ম্যাটিং কৌশল ব্যবহার করে, আমরা JSON স্ট্রিংগুলিকে পাইথন অবজেক্টে রূপান্তর করতে পারি, এবং পাইথন অবজেক্টকে JSON স্ট্রিংগুলিতে রূপান্তর করতে পারি।

এই কার্যকারিতাগুলি ব্যবহার করার জন্য, আমাদের পাইথনের json মডিউল ব্যবহার করতে হবে। json মডিউল পাইথন স্ট্যান্ডার্ড লাইব্রেরির সাথে আসে। তাই প্রথমে আমাদের এটি আমদানি করতে হবে।

json আমদানি করুন

পাইথন অবজেক্টকে JSON স্ট্রিং-এ রূপান্তর করা হচ্ছে

json মডিউলে, পাইথন অবজেক্টকে JSON স্ট্রিংয়ে রূপান্তর করার জন্য ডাম্প(), এবং ডাম্পস() এর মতো কিছু পদ্ধতি রয়েছে। ডাম্প() পদ্ধতি দুটি আর্গুমেন্ট নেয়, প্রথমটি হল অবজেক্ট এবং দ্বিতীয়টি হল ফাইল অবজেক্ট। এই পদ্ধতিটি অবজেক্টটিকে JSON ফর্ম্যাট করা স্ট্রিম হিসাবে ক্রমিককরণ করে বস্তু ফাইল করতে। একইভাবে ডাম্পস() পদ্ধতিতে শুধুমাত্র একটি আর্গুমেন্ট লাগে। যুক্তি হল বস্তু। এটি বস্তুগুলিকে JSON স্ট্রিং-এ রূপান্তর করে .

উদাহরণ কোড

io import StringIOstr_io_obj =StringIO()#JSON ডাম্প ব্যবহার করুন .getvalue()))my_json ={ "নাম" :"কল্যাণ", "বয়স" :25, "শহর" :'দিল্লি'}প্রিন্ট(json.dumps(my_json, indent=4))

আউটপুট

স্ট্রিংআইও অবজেক্টের মান:["ভারত", "অস্ট্রেলিয়া", "ব্রাজিল"] { "নাম":"কল্যাণ", "বয়স":25, "শহর":"দিল্লি"}

জেএসওএন স্ট্রিংগুলিকে পাইথন অবজেক্টে রূপান্তর করা হচ্ছে

এই ক্ষেত্রে আমরা JSON স্ট্রিংগুলিকে ডি-সিরিয়ালাইজ করছি। দুটি ভিন্ন পদ্ধতি আছে। এগুলো হলো load() এবং loads()। এই উভয় পদ্ধতিই JSON ফাইলকে যুক্তি হিসাবে নেয়। load() ফাইল অবজেক্ট ডেটা থেকে পাইথন অবজেক্টে রূপান্তরিত হয় এবং স্ট্রিং টাইপ ডেটা থেকে loads() রূপান্তরিত হয়।

উদাহরণ কোড

 io import StringIOstr_io_obj =StringIO('["xyz", "abc", "xyz", "pqr"]') #লোড থেকে StringIOprint('লোড:' + str(json.load(str_io_obj)) থেকে json আমদানি করুন )প্রিন্ট('স্ট্রিং টু জেসন:' + str(json.loads('{"xyz" :1, "abc" :2, "xyz" :3, "pqr" :4}')))

আউটপুট

লোড করুন:['xyz', 'abc', 'xyz', 'pqr']Json-এ স্ট্রিং:{'xyz':3, 'abc':2, 'pqr':4}

পাইথনে JSON এনকোডার এবং ডিকোডার ক্লাস

JSONencoder ক্লাস Python অবজেক্টকে JSON ফরম্যাটে রূপান্তর করতে ব্যবহৃত হয়। এখানে এই উদাহরণে আমরা দেখব কিভাবে JSON এনকোডার ব্যবহার করে একটি জটিল সংখ্যা বস্তুকে JSON টাইপ অবজেক্ট হিসাবে রূপান্তর করা যায়।

উদাহরণ কোড

ইমপোর্ট jsonclass Comp_Encoder(json.JSONEncoder):def default(self, comp_obj):if isinstance(comp_obj, complex):[comp_obj.real, comp_obj.imag] রিটার্ন করুন json.JSONEncoder.default(self, comp_obj) (json.dumps(5+8j, cls=Comp_Encoder))

আউটপুট

[5.0, 8.0]

JSONDecoder ক্লাস বিপরীত ক্রিয়া সম্পাদন করে।

উদাহরণ কোড

import jsonmy_str ='{"আসিম" :25, "প্রিয়শ" :23, "আসিম" :"28"}'#JSONDecoderprint(json.JSONDecoder().decode(my_str))print(json ব্যবহার করে JSON ডিকোড করুন .JSONDecoder().raw_decode(my_str))

আউটপুট

{'অসীম':'২৮', 'প্রিয়শ':23}({'অসীম':'28', 'প্রিয়শ':23}, 44)

  1. পাইথন ব্যবহার করে কিভাবে JSON আউটপুট তৈরি করবেন?

  2. কিভাবে জাভাস্ক্রিপ্ট অভিধান পাইথন অভিধানে রূপান্তর করবেন?

  3. পাইথন ব্যবহার করে স্ট্রিংকে কীভাবে JSON এ রূপান্তর করবেন?

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