ডেটা বিশ্লেষণের অনেক কাজে দুটি লিস্টের উপাদানগুলোর মধ্যে গুণফল বের করার প্রয়োজন পড়ে। এই নিবন্ধে আমরা একটি নেস্টেড লিস্ট (list of lists) এর উপাদানগুলিকে অন্য একটি লিস্টের সাথে কীভাবে গুণ করব তা দেখব।
লুপ ব্যবহার
এই পদ্ধতিতে দুটি for লুপ ব্যবহার করা হয়—বহিরাগত লুপটি মূল লিস্টের উপাদান সংখ্যা ট্র্যাক করে এবং অন্তঃস্থ লুপটি নেস্টেড লিস্টের প্রতিটি উপাদান ট্র্যাক করে। * অপারেটর ব্যবহার করে দ্বিতীয় লিস্টের উপাদানগুলো নেস্টেড লিস্টের সংশ্লিষ্ট উপাদানগুলোর সাথে গুণ করা হয়।
উদাহরণ
listA = [[2, 11, 5], [3, 2, 8], [11, 9, 8]]
multipliers = [5, 11, 0]
# মূল লিস্ট
print("The given list: ", listA)
# গুণক লিস্ট
print(" Multiplier list : ", multipliers)
# লুপ ব্যবহার
res = [[] for idx in range(len(listA))]
for i in range(len(listA)):
for j in range(len(multipliers)):
res[i] += [multipliers[i] * listA[i][j]]
# ফলাফল
print("Result of multiplication : ", res)
আউটপুট
The given list: [[2, 11, 5], [3, 2, 8], [11, 9, 8]] Multiplier list : [5, 11, 0] Result of multiplication : [[10, 55, 25], [33, 22, 88], [0, 0, 0]]
enumerate ব্যবহার
enumerate মেথড ব্যবহার করে নেস্টেড লিস্টের প্রতিটি উপাদান বের করে তারপর লুপ দিয়ে গুণফল করা সম্ভব। এটি কোডকে আরও সংক্ষিপ্ত ও পঠনযোগ্য করে।
উদাহরণ
listA = [[2, 11, 5], [3, 2, 8], [11, 9, 8]]
multipliers = [5, 11, 0]
# মূল লিস্ট
print("The given list: " + str(listA))
# গুণক লিস্ট
print(" Multiplier list : ", multipliers)
# enumerate ব্যবহার
res = [[multipliers[i] * j for j in x] for i, x in enumerate(listA)]
# ফলাফল
print("Result of multiplication : ", res)
আউটপুট
The given list: [[2, 11, 5], [3, 2, 8], [11, 9, 8]] Multiplier list : [5, 11, 0] Result of multiplication : [[10, 55, 25], [33, 22, 88], [0, 0, 0]]