দ্বিতীয় তালিকা দিয়ে প্রথম তালিকা সর্ট করা
যখন প্রথম তালিকার মানগুলো দ্বিতীয় তালিকার সাহায্যে সর্ট করতে হয়, তখন 'sorted' মেথড এবং 'zip' মেথড ব্যবহার করা হয়।
একটি তালিকা নানা ধরনের মান সংরক্ষণ করতে পারে (যেমন পূর্ণসংখ্যা, ফ্লোটিং পয়েন্ট, স্ট্রিং ইত্যাদি)।
'sorted' মেথড একটি তালিকার উপাদানগুলোর সর্ট করতে ব্যবহৃত হয়।
zip মেথড ইটারেবলগুলো নেয়, সেগুলোকে একটি টাপলে একত্রিত করে এবং ফলাফল হিসেবে ফেরত দেয়।
উদাহরণ
def list_sort(my_list_1, my_list_2):
zipped_list_pairs = zip(my_list_2, my_list_1)
my_result = [x for _, x in sorted(zipped_list_pairs)]
return my_result
my_list_1 = ['m', 'o', 'p', 'l', 'k', 'v', 'c', 'e', 'r']
my_list_2 = [1, 0, 0, 2, 2, 1, 1, 0, 0]
print("প্রথম তালিকা:")
print(my_list_1)
print("দ্বিতীয় তালিকা:")
print(my_list_2)
print("প্রথম তালিকা দ্বিতীয় তালিকার ভিত্তিতে সর্ট করা হচ্ছে")
print(list_sort(my_list_1, my_list_2))
my_list_3 = ['h', 'k', 'l', 'p', 'q', 'p', 'k', 'l', 'h', 'm', 'u', 'z', 'f', 't']
my_list_4 = [0, 1, 1, 1, 0, 2, 2, 2, 0, 2, 1, 2, 1, 0]
print("তৃতীয় তালিকা:")
print(my_list_3)
print("চতুর্থ তালিকা:")
print(my_list_4)
print("তৃতীয় তালিকা চতুর্থ তালিকার ভিত্তিতে সর্ট করা হচ্ছে")
print(list_sort(my_list_3, my_list_4))
আউটপুট
প্রথম তালিকা: ['m', 'o', 'p', 'l', 'k', 'v', 'c', 'e', 'r'] দ্বিতীয় তালিকা: [1, 0, 0, 2, 2, 1, 1, 0, 0] প্রথম তালিকা দ্বিতীয় তালিকার ভিত্তিতে সর্ট করা হচ্ছে ['e', 'o', 'p', 'r', 'c', 'm', 'v', 'k', 'l'] তৃতীয় তালিকা: ['h', 'k', 'l', 'p', 'q', 'p', 'k', 'l', 'h', 'm', 'u', 'z', 'f', 't'] চতুর্থ তালিকা: [0, 1, 1, 1, 0, 2, 2, 2, 0, 2, 1, 2, 1, 0] তৃতীয় তালিকা চতুর্থ তালিকার ভিত্তিতে সর্ট করা হচ্ছে ['h', 'h', 'q', 't', 'f', 'k', 'l', 'p', 'u', 'k', 'l', 'm', 'p', 'z']
ব্যাখ্যা
- 'list_sort' নামক একটি মেথড সংজ্ঞায়িত করা হয়েছে, যা দুটি তালিকা প্যারামিটার হিসেবে নেয়।
- এটি দুটি তালিকাকে জিপ করে এবং অন্য একটি ভেরিয়েবলে সংরক্ষণ করে।
- এটি ইটারেট করা হয়েছে এবং সর্ট করা হয়েছে এবং অন্য একটি ভেরিয়েবলে অ্যাসাইন করা হয়েছে।
- এটি তারপর কনসোলে ফলাফল হিসেবে প্রদর্শিত হয়েছে।
- দুটি তালিকা সংজ্ঞায়িত করা হয়েছে এবং কনসোলে প্রদর্শিত হয়েছে।
- মেথডটি এই তালিকাগুলোর ওপর কল করা হয়েছে।
- এটি তারপর আউটপুট হিসেবে কনসোলে প্রদর্শিত হয়েছে।