text: পাইথন পিকল পাইথন প্রোগ্রামিং ভাষার একটি জনপ্রিয় মডিউল। মডিউলটি ব্যবহার করে অবজেক্ট সিরিয়ালাইজেশন ও ডিসিরিয়ালাইজেশন করা হয়। পাইথন প্রোগ্রামিং ভাষায় অবজেক্ট সিরিয়ালাইজেশনকে পিকলিং ও ডিসিরিয়ালাইজেশনকে আনপিকলিং বলা হয়। পিকলিংকে বা সিরিয়ালাইজেশনকে মার্শালিং বা ফ্ল্যাটেনিংও বলা হয়ে থাকে।
  
  পিকল মডিউল ব্যবহার করে সাধারণত কোন অবজেক্ট যেমন ডিকশনারি, লিস্ট, টুপল, সেট বা ব্যবহারকারী কর্তৃক বর্ণিত কোন অবজেক্টকে কোন ফাইলে সংরক্ষণ করে রাখা যায় ও পরবর্তীকালে প্রয়োজন অনুসারে পুনরায় তা উদ্ধার ও ব্যবহার করা যায়।
  
  প্রয়োজনীয়তা
  কোন অবজেক্টকে সংরক্ষণ করে পরবর্তীতে তা পুনরায় ব্যবহার করতে চাইলে পিকলিং ও আনপিকলিংয়ের প্রয়োজন হয়। পিকলিংয়ের আরেকটি প্রয়োজন হয় ডাটা ট্রান্সমিশন বা তথ্য আদান প্রদানের সময়। সাধারণত সরাসরি কোন অবজেক্ট ট্রান্সমিট বা কম্পিউটার নেটওয়ার্কের মাধ্যমে আদান প্রদান করা সম্ভপর নয়। এহেন পরিস্থিতিতে কোন সকেট কানেকশনের মাধ্যমে অবজেক্ট আদান প্রদান করতে হলে প্রথমেই সেই অবজেক্টটিকে ক্যারেক্টার স্ট্রিমে রূপান্তর করে নিতে হয়। পিকল মডিউল কোন অবজেক্টকে কোন ফাইলে ক্যারেক্টার স্ট্রিম রুপে ডাম্প করতে ও পরবর্তীকালে সেই ডাম্পকৃত স্ট্রিমকে পুনরায় সম্পূর্ণ কার্যক্ষম অবজেক্টে রূপান্তর করতে পারে। পিকল মডিউল ডিস্ট্রিবিউটেড ও প্যারালাল কম্পিউটিংয়ের জন্য একটি অত্যন্ত প্রয়োজনীয় মডিউল।
  
  সিপিকল
  
  উদাহরণ
  নিচের পাইথন প্রোগ্রামটি filename.obj নামের একটি ফাইলে my_list নামক অবজেক্টটি ডাম্প ফাংশন ব্যবহার করে পিকলিং করার পদ্ধতি দেখানো হল...
  
  import pickle
  
  my_list = [1, 2, "wikipedia"]
  
  f = open("filename.obj", "w")
  pickle.dump(my_list, f)
  f.close()
  
  ডাম্প করা ফাইলকে উদ্ধার করতে চাইলে নামক ফাংশন ব্যবহার করা হয়। নিচের উদাহরণে ফাংশন ব্যবহার করে কোন অবজেক্টকে আনপিকলিং করা দেখানো হল।
  
  তথ্যসূত্র
  
  বিষয়শ্রেণী:কম্পিউটার প্রোগ্রামিং
title: পাইথন পিকল