পাইথনে অভিধান অ্যাক্সেস করার সঠিক উপায় - KDnuggets

পাইথনে অভিধান অ্যাক্সেস করার সঠিক উপায় – কেডিনুগেটস

উত্স নোড: 2490894

পাইথনে অভিধান অ্যাক্সেস করার সঠিক উপায়
লেখকের ছবি
 

ডেটা নিয়ে কাজ করার সময়, বিশেষ করে যদি আমাদের প্রিয় পাইথন ভাষা ব্যবহার করে, অভিধানটি একটি মৌলিক ডেটা কাঠামো হিসাবে দাঁড়িয়ে আছে, যারা এটিকে আনলক করতে জানেন তাদের কাছে এটির ডেটা উন্মোচন করতে প্রস্তুত। 

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

এই কী-মান জোড়া কাঠামো ডেটা সঞ্চয় করার একটি উপায় প্রদান করে যাতে এটি অবস্থানের পরিবর্তে কী দ্বারা দক্ষতার সাথে পুনরুদ্ধার করা যায়।

যাইহোক, বেশিরভাগ সময় একটি কী খুঁজতে গিয়ে একটি অবাঞ্ছিত KeyError আমাদের সম্পূর্ণ এক্সিকিউশন ভেঙ্গে দিতে পারে। এই কারণেই এই নির্দেশিকা কিছু আলোকপাত করার চেষ্টা করে এবং আমাদের কার্য সম্পাদনের বিরতি এড়িয়ে অভিধানগুলি অ্যাক্সেস করার কিছু কার্যকর উপায় ব্যাখ্যা করে। 

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

 

পাইথনে অভিধান অ্যাক্সেস করার সঠিক উপায়
লেখকের ছবি
 

পাইথনে, অভিধানগুলি কোঁকড়া বন্ধনী {} দিয়ে ঘোষণা করা হয়, কী এবং তাদের সংশ্লিষ্ট মানগুলি কোলন ":" দ্বারা পৃথক করা হয় এবং প্রতিটি জোড়া কমা দ্বারা পৃথক করা হয়। 

এখানে একটি সহজ উপস্থাপনা:

# Creating a simple dictionary with keys and values
salaries = { 'Data Scientist': 100000, 'Data Analyst': 80000, 'Data Engineer': 120000} print(salaries)

 

একটি অভিধান তৈরি করা মাত্র শুরু। এই সংরক্ষিত তথ্য পুনরুদ্ধার এবং ম্যানিপুলেট করার সময় অভিধানের প্রকৃত উপযোগিতা উপলব্ধি করা হয়।

একটি অভিধানে একটি মান অ্যাক্সেস করার একটি সাধারণ পদ্ধতি হল বর্গাকার বন্ধনীর মধ্যে কী নাম ব্যবহার করে:

# Accessing a value using the key
print(salaries['Data Scientist']) # Outputs: 100000 print(salaries['Professor']) # This will raise a KeyError, as 'Professor' key doesn't exist

 

এই পদ্ধতিটি সোজা বলে মনে হয় যতক্ষণ না আপনি একটি কীর মুখোমুখি হন যা অভিধানে বিদ্যমান নেই, যা একটি কী ত্রুটির দিকে নিয়ে যায়। 

এটি একটি সাধারণ সমস্যা যা বড় প্রকল্পগুলিকে জটিল করতে পারে।

KeyError এড়াতে, অনুপস্থিত কীগুলি পরিচালনা করার জন্য আপনি if স্টেটমেন্ট বা চেষ্টা-ব্যতীত ব্লকগুলি ব্যবহার করার কথা বিবেচনা করতে পারেন। 

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

  • get() পদ্ধতি
  • setdefault() পদ্ধতি

get() পদ্ধতি গ্রহণ করা

get() পদ্ধতিটি একটি অভিধান থেকে মান পুনরুদ্ধার করার একটি আরও কার্যকর উপায়। এটির জন্য আপনি যে কীটি অনুসন্ধান করছেন সেটির প্রয়োজন এবং কীটি না পাওয়া গেলে একটি ডিফল্ট মানের জন্য একটি ঐচ্ছিক দ্বিতীয় প্যারামিটারের অনুমতি দেয়৷

# Using get() to safely access a value
salary = salaries.get('Data Scientist', 'Key not found')
print(salary) # Outputs: 30 # Using get() with a default value if the key doesn't exist
salary = salaries.get('Professor', 'Key not found')
print(salary) # Outputs: 30

 

এটি একটি অভিধান অ্যাক্সেস করার সবচেয়ে সহজ উপায় যখন নিশ্চিত করে যে সেখানে একটি কী ত্রুটি থাকবে না৷ একটি ডিফল্ট বিকল্প থাকা নিশ্চিত করার একটি নিরাপদ উপায় সবকিছু ঠিক আছে। 

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

এটি আমাদের দ্বিতীয় পদ্ধতির দিকে নিয়ে যায়। 

সেটডিফল্ট() পদ্ধতির ব্যবহার

এমন পরিস্থিতিতে যেখানে আপনি নিরাপদে একটি মান পুনরুদ্ধার করতে চান না কিন্তু নতুন কীগুলির সাথে অভিধান আপডেট করতে চান, সেটডিফল্ট() অমূল্য হয়ে ওঠে। 

এই পদ্ধতিটি একটি কী-এর অস্তিত্ব পরীক্ষা করে এবং অনুপস্থিত থাকলে, নির্দিষ্ট ডিফল্ট মান সহ কী যোগ করে, কার্যকরভাবে মূল অভিধান পরিবর্তন করে।

# Using setdefault() to get a value and set it if not present
salary = salaries.setdefault('Professor', 70000)
print(salary) # Outputs: 70000 since 'Professor' was not in the dictionary # Examining the dictionary after using setdefault()
print(salaries) # Outputs: {'Data Scientist': 100000, 'Data Analyst': 80000, 'Data Engineer': 120000, 'Professor': 70000}

 

setdefault() ব্যবহার করার পর playersHeight পরীক্ষা করলে নতুন যোগ করা কীগুলি তাদের ডিফল্ট মান সহ দেখাবে, মূল অভিধানের গঠন পরিবর্তন করে।

get() এবং setdefault() এর মধ্যে পছন্দ আপনার নির্দিষ্ট চাহিদার উপর নির্ভর করে। মূল অভিধান পরিবর্তন না করেই যখন আপনাকে কেবল ডেটা পুনরুদ্ধার করতে হবে তখন get() ব্যবহার করুন। আপনার টাস্কের জন্য অভিধানে নতুন এন্ট্রি যোগ করার প্রয়োজন হলে setdefault() বেছে নিন।

পুরানো অভ্যাস ভাঙ্গার জন্য কিছু প্রচেষ্টার প্রয়োজন হতে পারে, কিন্তু get() এবং setdefault() ব্যবহারে রূপান্তর আপনার পাইথন কোডের দৃঢ়তা এবং পাঠযোগ্যতা উল্লেখযোগ্যভাবে বৃদ্ধি করতে পারে। 

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

get() এবং setdefault() এর প্রধান ভূমিকা এই ধরনের ফরম্যাটগুলি পরিচালনা করার এবং আমাদের অভিধানগুলি অ্যাক্সেস করার দুর্দান্ত উপায় হিসাবে আবির্ভূত হয়। 

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

আপনি সংশ্লিষ্ট জুপিটার নোটবুকটি দেখতে যেতে পারেন GitHub রেপো অনুসরণ করছে।
 
 

জোসেপ ফেরার বার্সেলোনার একজন বিশ্লেষণী প্রকৌশলী। তিনি পদার্থবিদ্যা প্রকৌশলে স্নাতক হয়েছেন এবং বর্তমানে মানুষের গতিশীলতার জন্য প্রয়োগ করা ডেটা সায়েন্স ক্ষেত্রে কাজ করছেন। তিনি একজন খণ্ডকালীন বিষয়বস্তু নির্মাতা যিনি ডেটা বিজ্ঞান এবং প্রযুক্তির উপর দৃষ্টি নিবদ্ধ করেন। আপনি তার সাথে যোগাযোগ করতে পারেন লিঙ্কডইন, Twitter or মধ্যম.

সময় স্ট্যাম্প:

থেকে আরো কেডনুগেটস