Python Dictionaries

পাইথন অভিধান

thisdict = {
  "brand": "Ford",
  "model": "Mustang",
  "year": 1964
}

অভিধান

অভিধানগুলি কী:মান জোড়ায় ডেটা মান সংরক্ষণ করতে ব্যবহৃত হয়।

একটি অভিধান হল একটি সংগঠিত*, পরিবর্তনযোগ্য এবং নন-ডুপ্লিকেট সংগ্রহ।

পাইথন সংস্করণ 3.7 অনুসারে, অভিধানগুলি সংগঠিত। পাইথন 3.6 এবং তার আগে, অভিধানগুলি বিন্যাসহীন।

অভিধানগুলি কোঁকড়া বন্ধনীতে লেখা হয় এবং এতে কী এবং মান থাকে:

উদাহরণ

একটি অভিধান তৈরি করুন এবং মুদ্রণ করুন:

thisdict = {
  "brand": "Ford",
  "model": "Mustang",
  "year": 1964
}
print(thisdict)

অভিধান আইটেম

অভিধানের আইটেমগুলি সংগঠিত, পরিবর্তনযোগ্য এবং অনুলিপিগুলিকে অনুমতি দেয় না।

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

উদাহরণ

অভিধানের "ব্র্যান্ড" মান প্রিন্ট করুন:

thisdict = {
  "brand": "Ford",
  "model": "Mustang",
  "year": 1964
}
print(thisdict["brand"])

সংগঠিত না অসংগঠিত?

পাইথন সংস্করণ 3.7 অনুসারে, অভিধানগুলি সংগঠিত। পাইথন 3.6 এবং তার আগে, অভিধানগুলি বিন্যাসহীন।

যখন আমরা বলি যে অভিধানগুলি অর্ডার করা হয়েছে, আমরা বলতে চাই যে আইটেমগুলির একটি সংজ্ঞায়িত ক্রম আছে এবং সেই ক্রমটি পরিবর্তন হয় না।

Unordered মানে হল যে আইটেমগুলির একটি সংজ্ঞায়িত অর্ডার নেই এবং আপনি একটি সূচক ব্যবহার করে একটি আইটেম উল্লেখ করতে পারবেন না।

পরিবর্তনযোগ্য

অভিধানগুলি পরিবর্তনযোগ্য, যার অর্থ আমরা অভিধান তৈরি করার পরে আইটেমগুলি পরিবর্তন করতে, যোগ করতে বা সরাতে পারি।

ডুপ্লিকেশন অনুমোদিত নয়

অভিধানে একই কী সহ দুটি আইটেম থাকতে পারে না:

উদাহরণ

ডুপ্লিকেট মান বিদ্যমান মানগুলিকে ওভাররাইট করে:

thisdict = {
  "brand": "Ford",
  "model": "Mustang",
  "year": 1964,
  "year": 2020
}
print(thisdict)

অভিধানের দৈর্ঘ্য

একটি অভিধানে কতগুলি আইটেম রয়েছে তা নির্ধারণ করতে,len()ফাংশন ব্যবহার করুন:

উদাহরণ

অভিধানে আইটেমের সংখ্যা প্রিন্ট করুন:

print(len(thisdict))

অভিধান আইটেম - ডেটা প্রকার

অভিধানের আইটেমগুলির মানগুলি যে কোনও ডেটা টাইপের হতে পারে:

উদাহরণ

স্ট্রিং, ইন্টিজার, বুলিয়ান এবং তালিকা ডেটা প্রকার:

thisdict = {
  "brand": "Ford",
  "electric": False,
  "year": 1964,
  "colors": ["red", "white", "blue"]
}

type()

পাইথনের দৃষ্টিকোণ থেকে, অভিধানগুলিকে 'ডিক্ট' ডেটা টাইপ সহ বস্তু হিসাবে সংজ্ঞায়িত করা হয়:

<class 'dict'>

উদাহরণ

একটি অভিধানের ডেটা টাইপ মুদ্রণ করুন:

thisdict = {
  "brand": "Ford",
  "model": "Mustang",
  "year": 1964
}
print(type(thisdict))

dict() কনস্ট্রাক্টর

একটি অভিধান তৈরি করুনdict()কনস্ট্রাক্টর ব্যবহার করাও সম্ভব।

উদাহরণ

একটি অভিধান তৈরি করুনdict()পদ্ধতি ব্যবহার করে:

thisdict = dict(name = "John", age = 36, country = "Norway")
print(thisdict)

পাইথন অ্যারে (অ্যারে)

পাইথন প্রোগ্রামিং ল্যাঙ্গুয়েজে চার সেট ডেটা টাইপ আছে:

প্যাকেজ প্রকার বৈশিষ্ট্য
তালিকা একটি সংগঠিত এবং পরিবর্তনযোগ্য সংগ্রহ। ডুপ্লিকেট সদস্যদের অনুমতি দেয়।
টিপল একটি সংগঠিত এবং অপরিবর্তনীয় সংগ্রহ। ডুপ্লিকেট সদস্যদের অনুমতি দেয়।
সেট একটি অসংগঠিত, অপরিবর্তনীয়* এবং আনকোডেড সংগ্রহ। কোন সদৃশ সদস্য.
অভিধান সংগঠিত** এবং পরিবর্তনযোগ্য প্যাকেজ। কোন সদৃশ সদস্য.

📝দ্রষ্টব্য:

*সেট আইটেমগুলি অপরিবর্তনীয়, তবে আপনি আপনার ইচ্ছামত আইটেমগুলি সরাতে এবং/অথবা যোগ করতে পারেন।

** যেহেতু পাইথন সংস্করণ 3.7, অভিধানগুলি সংগঠিত। পাইথন 3.6 এবং তার আগে, অভিধানগুলি বিন্যাসহীন।

একটি প্যাকেজ টাইপ নির্বাচন করার সময়, সেই ধরনের বৈশিষ্ট্যগুলি বোঝার জন্য এটি কার্যকর। একটি নির্দিষ্ট ডেটা সেটের জন্য সঠিক প্রকার নির্বাচন করা অর্থপূর্ণ হতে পারে এবং এর অর্থ কার্যক্ষমতা বা নিরাপত্তা বৃদ্ধি হতে পারে।

অনুশীলন করুন

এর মধ্যে কোনটি অভিধান?

x = ('apple', 'banana', 'cherry')
✗ ভুল! এটি একটি টিপল (গোলাকার বন্ধনী)।
x = {'type' : 'fruit', 'name' : 'banana'}
✓ ঠিক আছে! এটি একটি অভিধান (কোঁকড়া বন্ধনী এবং কী:মান জোড়া)।
x = ['apple', 'banana', 'cherry']
✗ ভুল! এটি একটি তালিকা (বর্গাকার বন্ধনী)।