কম্পিউটার টিউটোরিয়াল

itemgetter ব্যবহার করে ডিকশনারি লিস্ট ভ্যালু অনুযায়ী সর্ট করার পাইথন প্রোগ্রাম


operator.itemgetter ব্যবহার করে ল্যাম্বডার চেয়ে দ্রুত ও পঠনীয়ভাবে ডিকশনারি লিস্ট সর্ট করা হয়।

উদাহরণ

from operator import itemgetter

people = [
    {"name": "Will", "age": 56},
    {"name": "Rob", "age": 20},
    {"name": "Mark", "age": 34},
    {"name": "John", "age": 24}
]

print("এইজ অনুযায়ী:")
print(sorted(people, key=itemgetter('age')))

print("এইজ ও নাম:")
print(sorted(people, key=itemgetter('age', 'name')))

print("এইজ ডিসেন্ডিং:")
print(sorted(people, key=itemgetter('age'), reverse=True))

আউটপুট

এইজ অনুযায়ী:
[{'name': 'Rob', 'age': 20}, {'name': 'John', 'age': 24}, {'name': 'Mark', 'age': 34}, {'name': 'Will', 'age': 56}]
এইজ ও নাম:
[{'name': 'Rob', 'age': 20}, {'name': 'John', 'age': 24}, {'name': 'Mark', 'age': 34}, {'name': 'Will', 'age': 56}]
এইজ ডিসেন্ডিং:
[{'name': 'Will', 'age': 56}, {'name': 'Mark', 'age': 34}, {'name': 'John', 'age': 24}, {'name': 'Rob', 'age': 20}]

ব্যাখ্যা

  • itemgetter('age') একটি ক্যালেবল যা obj['age'] রিটার্ন করে।

  • মাল্টি-আর্গুমেন্ট: itemgetter('age', 'name') টাপল রিটার্ন করে।

  • ল্যাম্বডার চেয়ে C-লেভেলে ইমপ্লিমেন্টেড হওয়ায় দ্রুত।

  • বড় ডেটাসেটে পারফরম্যান্স পার্থক্য ملحوظ।


  1. পাইথন ডিকশনারি লিস্ট ডেটা টাইপ অনুযায়ী সর্ট করা

  2. Python-এ শব্দগুলো আলফাবেটিক আর্ডারে সর্ট করা

  3. পাইথনে ডিকশনারির ভ্যালু অনুযায়ী লিস্ট অফ ডিকশনারি সর্ট কীভাবে করবেন?

  4. পাইথনে লুপ ব্যবহার করে লিস্টের ভেরিয়েবলগুলোর মান অ্যাসাইন করার পদ্ধতি