আমরা [] ব্র্যাকেট এবং সূচক নম্বর ব্যবহার করে একটি তালিকার পৃথক উপাদান অ্যাক্সেস করতে পারি। কিন্তু যখন আমাদের কিছু নির্দিষ্ট সূচক অ্যাক্সেস করতে হয়, তবে এই পদ্ধতি কাজ করে না। এই সমস্যা সমাধানের জন্য নিচের পদ্ধতিগুলো ব্যবহার করতে হয়।
দুটি তালিকা ব্যবহার করে
এই পদ্ধতিতে, মূল তালিকার সাথে সাথে সূচকগুলোও একটি তালিকা হিসেবে নেওয়া হয়। তারপর একটি for লুপ ব্যবহার করে সূচকগুলোতে ইটারেট করা হয় এবং সেই মানগুলো মূল তালিকায় সরবরাহ করে মানগুলো রিট্রিভ করা হয়।
উদাহরণ
given_list = ["Mon","Tue","Wed","Thu","Fri"]
index_list = [1,3,4]
# printing the lists
print("Given list : " + str(given_list))
print("List of Indices : " + str(index_list))
# use list comprehension
res = [given_list[n] for n in index_list]
# Get the result
print("Result list : " + str(res))
আউটপুট
উপরোক্ত কোডটি রান করলে নিচের ফলাফল পাওয়া যায়:
Given list : ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] List of Indices : [0, 1, 2, 3, 4] Result list : ['Tue', 'Thu', 'Fri']
map এবং __getitem__ ব্যবহার করে
উপরের for লুপের বদলে আমরা map এবং __getitem__ মেথডও ব্যবহার করে একই ফলাফল পেতে পারি।
উদাহরণ
given_list = ["Mon","Tue","Wed","Thu","Fri"]
index_list = [1, 3,4]
# printing the lists
print("Given list : " + str(given_list))
print("List of Indices : " + str(index_list))
# use list comprehension
res = list(map(given_list.__getitem__, index_list))
# Get the result
print("Result list : " + str(res))
আউটপুট
উপরোক্ত কোডটি রান করলে নিচের ফলাফল পাওয়া যায়:
Given list : ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] List of Indices : [1, 3, 4] Result list : ['Tue', 'Thu', 'Fri']