পাইথন অভিধানের ডেটা স্ট্রাকচার - অংশ 3 শিখুন


পাইথন ডেটা স্ট্রাকচার সিরিজের এই পার্ট 3 এ আমরা অভিধানটি কী, এটি কীভাবে পাইথনের অন্যান্য ডেটা কাঠামো থেকে আলাদা, অভিধানের বিষয়বস্তু এবং অভিধানের বিষয়গুলির পদ্ধতি কীভাবে তৈরি করতে, মুছতে হবে তা নিয়ে আলোচনা করব।

  • অভিধান হ'ল "পাইথন ডেটা স্ট্রাকচার" এর অন্তর্নির্মিত বাস্তবায়ন যা "কী: মান" জোড়গুলির সংগ্রহ সেমিকোলন {কী: মান} দিয়ে আলাদা করে কী এবং মান সহ কোঁকড়ানো ধনুর্বন্ধনী ব্যবহার করে অভিধান তৈরি করা হয়েছে
  • তালিকার অনুরূপ, অভিধানের অবজেক্টগুলি পারস্পরিক পরিবর্তনযোগ্য ডেটা টাইপ অর্থ শব্দগুলি অভিধান তৈরি হওয়ার পরে পরিবর্তন করা যেতে পারে
  • পাইথনে অভিধান প্রয়োগের কাঠামোটি সাধারণত "সহযোগী অ্যারে" নামে পরিচিত
  • তালিকায় বা টিপলসগুলিতে, আমরা আইটেমগুলিকে তাদের সূচী অবস্থানগুলি উল্লেখ করে অ্যাক্সেস করতে পারি কারণ তালিকার অভ্যন্তরে আইটেমগুলি অর্ডার করা হয় (অর্থাত্ তারা যে ক্রমটি তৈরি করেছে তাতে সংরক্ষণ করা হয়)। অভিধান সম্পর্কিত বিষয়গুলি যে কোনও ক্রমে হতে পারে যেহেতু আইটেমগুলির সাথে সম্পর্কিত "কী" ব্যবহার করে অ্যাক্সেস করা হয়
  • যখন শব্দগুলি আমাদের সংরক্ষণ করতে হয় এবং নাম হিসাবে সেগুলি উল্লেখ করতে হয় তখন অভিধানগুলি খুব কার্যকর।
  • অভিধান "কী" অবজেক্ট অবশ্যই একটি অনন্য এবং অপরিবর্তনীয় টাইপ হতে হবে।
  • অভিধান "কী" অবজেক্টটি স্ট্রিং, পূর্ণসংখ্যার, ভাসমান মান হতে পারে
  • অভিধান "মান" যে কোনও ডেটা ধরণের হতে পারে

অভিধান অবজেক্টটি তৈরি করুন

সেমিকোলন পৃথককারী কী এবং মান জোড় “{কী: মান}” বা “ডিক()” কনস্ট্রাক্টর পদ্ধতির সাহায্যে কোঁকড়া ধনুর্বন্ধনী ব্যবহার করে অভিধান অবজেক্ট তৈরি করা যেতে পারে।

প্রদর্শনের জন্য, আমি একটি অভিধান তৈরি করতে যাচ্ছি যা ফুটবল দল এবং তাদের প্লেয়িং একাদশ সম্পর্কিত ডেটা এবং কী এবং খেলোয়াড়ের নাম হিসাবে মান হিসাবে অবস্থান সঞ্চয় করবে store

আপনি অভিধানের অবজেক্টটি তৈরি করতে কনস্ট্রাক্টর মেথড ডেক() ব্যবহার করতে পারেন।

ডিক্টোনারি অবজেক্ট অ্যাক্সেস করুন

অভিধান আইটেমগুলি সূচি পরিবর্তনের পরিবর্তে "কী" উল্লেখ দ্বারা অ্যাক্সেস করা হয়। অভিধানের ভিতরে যদি আমাদের কোনও সিক্যুয়েন্স ডেটা টাইপ (স্ট্রিং, তালিকা, টিপলস ইত্যাদি) থাকে তবে ইনডেক্সিং ব্যবহার করা সম্ভব।

আইটেমগুলি dic_object ["কী"] ব্যবহার করে অ্যাক্সেস করা যায়।

যদি আপনি ইনডেক্সিংয়ের সাথে অভিধান আইটেমগুলি অ্যাক্সেস করার চেষ্টা করেন বা আপনি যদি অভিধানের অংশ না হয় এমন একটি "কী" অ্যাক্সেস করার চেষ্টা করেন তবে "কীআরার" উত্থাপিত হবে।

অভিধান অবজেক্টটি সংশোধন এবং মুছুন

আপনি বিদ্যমান আইটেমটি সংশোধন করতে পারেন বা এর নতুন অভিধান_বজেক্ট ["কী"] = মান উল্লেখ করে একটি নতুন আইটেম যুক্ত করতে পারেন। কীটি উপলব্ধ থাকলে এটি মানটিকে আপডেট করবে অন্যথায় অভিধানে নতুন আইটেম যুক্ত করুন।

আপনি তার কী এর উপর ভিত্তি করে কোনও নির্দিষ্ট মান মুছে ফেলতে বা একটি কী মুছতে বা অন্তর্নির্মিত "ডেল" কীওয়ার্ড ব্যবহার করে নামস্পেস থেকে অভিধান অবজেক্টটি মুছতে পারেন।

আপনি অভিধান অবজেক্টের জন্য উপলভ্য পদ্ধতি এবং বৈশিষ্ট্যগুলি সন্ধান করতে বিল্ট-ইন “dir()” ফাংশনটি ব্যবহার করতে পারেন।

সাফ() - এই পদ্ধতিটি অভিধান অবজেক্ট থেকে সমস্ত আইটেম সরিয়ে ফেলবে। এই পদ্ধতিতে কোনও যুক্তি লাগে না।

অনুলিপি() - এটি অভিধানের কোনও বস্তুর অগভীর অনুলিপি প্রদান করবে। অনুলিপি() পদ্ধতিটি কোনও আর্গুমেন্ট হিসাবে কোনও পরামিতি নেয় না।

কী() - এই পদ্ধতিটি অভিধানে কী কী অবজেক্ট হিসাবে উপলব্ধ কীগুলির জন্য দ্য অবজেক্টটি প্রদান করে। এই পদ্ধতিতে কোনও যুক্তি লাগে না।

মান() - এই পদ্ধতিটি অভিধান অবজেক্ট থেকে মানগুলির জন্য একটি ভিউ অবজেক্ট প্রদান করে। এই পদ্ধতিতে কোন যুক্তি লাগে না।

আইটেম() - এই পদ্ধতিটি অভিধান অবজেক্ট থেকে একটি টিপল (কী, মান) জোড়া দেয়।

সেটডিফল্ট() - এই পদ্ধতিটি একটি অভিধানে প্রদত্ত কীটির সন্ধান করে। অভিধানে যদি কীটি না পাওয়া যায় তবে এটি অভিধানে যুক্ত করা হবে
এটি dic.setdefault (কী, [, ডিফল্ট মান]) 2 টি আর্গুমেন্ট লাগে।

কোনও মান নির্দিষ্ট না করা থাকলে ডিফল্ট মানটি কোনওটিতে সেট করা থাকে।

get() - কোনও অভিধানে কী উপলব্ধ থাকলে এই পদ্ধতিটি নির্দিষ্ট কীটির মান প্রদান করে।

Syntax dict.get(key[, value]) 

এই পদ্ধতিতে 2 টি আর্গুমেন্ট লাগে। প্রথমটি ইনপুট আর্গুমেন্ট যা অভিধানে প্রদত্ত কীটির সন্ধান করবে এবং কীটির মানটি পাওয়া যাবে ফিরে আসবে। কোনও চাবি না পাওয়া গেলে দ্বিতীয় যুক্তিটি মানটি ফিরিয়ে দেবে। ডিফল্ট রিটার্ন মানটি "কিছুই নয়" তে সেট করা আছে।

আপডেট() - আপডেট পদ্ধতিটি অভিধানে আইটেম যুক্ত করে যদি কী অভিধানে থাকে না। যদি কীটি পাওয়া যায় তবে কীটি নতুন মান সহ আপডেট হয়। হালনাগাদ পদ্ধতিটি কে: ভি জোড় বা পুনরায় পুনরুত্থানযোগ্য কে: ভি জোড়ের জোড়াের মতো টিয়ের অভিধানের অন্য কোনও বস্তু গ্রহণ করে।

অভিধান অবজেক্ট মুছে ফেলা/মুছে ফেলা হচ্ছে

পপ() - এই পদ্ধতিটি ইনপুট হিসাবে মূলের উপর ভিত্তি করে মানটি সরিয়ে দেয় এবং মুছে ফেলা মানটি দেয়।

এই পদ্ধতিটি দুটি পরামিতি গ্রহণ করে।

  1. কী - অভিধানের অবজেক্টে অনুসন্ধান করা কী
  2. ডিফল্ট - অভিধানে কীটি পাওয়া না গেলে নির্দিষ্ট করতে ফেরতের মান।

দ্রষ্টব্য যদি অভিধানে কীটি না পাওয়া যায় এবং আপনি যদি ডিফল্ট মান নির্দিষ্ট করতে ব্যর্থ হন তবে "কীআরার" উত্থাপিত হবে।

পপাইটেম() - অভিধান অবজেক্ট থেকে একটি স্বেচ্ছাসেবী উপাদান সরিয়ে দেয়। কোনও যুক্তি স্বীকৃত হয় না এবং অভিধানটি খালি থাকলে বলা হয় এটি "কী-ইরার" ফিরিয়ে দেয়।

তালিকা এবং টিপলগুলির মতো, আমরা অভিধান অবজেক্টের আইটেমগুলি সরিয়ে ফেলতে বা নামের স্থান থেকে অভিধান অবজেক্টটি সরাতে একটি ডেল কীওয়ার্ড ব্যবহার করতে পারি।

এই নিবন্ধে আপনি দেখেছেন অভিধান কী এবং এটি কীভাবে পাইথনের অন্যান্য ডেটা কাঠামো থেকে আলাদা। আপনি কীভাবে অভিধান অবজেক্ট তৈরি করতে, অ্যাক্সেস করতে, সংশোধন করতে এবং মুছবেন তাও দেখেছেন।

অভিধানের সর্বোত্তম ব্যবহারের ক্ষেত্রটি হ'ল আমরা যখন কোনও নামের উপর ভিত্তি করে ডেটা সংরক্ষণ করতে পারি এবং সেটিকে তার নামে উল্লেখ করতে পারি। পরবর্তী নিবন্ধে, আমরা দেখতে পাই অন্য ধরণের পাইথন বিল্ট-ইন ডেটা স্ট্রাকচার "সেট/ফ্রোজেনসেট"। ততক্ষণ আপনি এখানে অভিধান সম্পর্কে আরও পড়তে পারেন।