কম্পিউটার

দুটি তালিকার কার্টেসিয়ান পণ্য খুঁজে পেতে পাইথন প্রোগ্রাম


ধরুন আমাদের কাছে ডেটার দুটি তালিকা আছে l1 এবং l2। আমাদের এই দুটি তালিকার কার্টেসিয়ান পণ্য খুঁজে বের করতে হবে। আমরা জানি যদি দুটি তালিকা (a, b) এবং (c, d) এর মত হয় তাহলে কার্টেসিয়ান গুণফল হবে {(a, c), (a, d), (b, c), (b, d)} . এটি করার জন্য আমরা itertools লাইব্রেরি ব্যবহার করব এবং এই লাইব্রেরিতে উপস্থিত পণ্য() ফাংশন ব্যবহার করব। এই ফাংশনের প্রত্যাবর্তিত মান হল একটি পুনরাবৃত্তিকারী। লিস্ট() কনস্ট্রাক্টরে আউটপুট পাস করে আমাদের এটিকে তালিকায় রূপান্তর করতে হবে।

সুতরাং, যদি ইনপুটটি l1 =[1,5,6] l2 =[1,2,9] এর মত হয়, তাহলে আউটপুট হবে [(1, 1), (1, 2), (1, 9), (5, 1), (5, 2), (5, 9), (6, 1), (6, 2), (6, 9)]

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • x :=পণ্য(l1, l2) কার্টেসিয়ান পণ্যের পুনরাবৃত্তিকারী পেতে

  • ret :=তালিকা(x) x পুনরাবৃত্তিকারীকে তালিকাতে রূপান্তর করতে

  • রিটার্ন রিটার্ন

উদাহরণ

আরও ভালোভাবে বোঝার জন্য আসুন নিম্নলিখিত বাস্তবায়ন দেখি

from itertools import product
def solve(l1, l2):
   return list(product(l1, l2))

l1 = [1,5,6]
l2 = [1,2,9]
print(solve(l1, l2))

ইনপুট

[1,5,6], [1,2,9]

আউটপুট

[(1, 1), (1, 2), (1, 9), (5, 1), (5, 2), (5, 9), (6, 1), (6, 2), (6, 9)]

  1. পাইথনে দুটি আয়তক্ষেত্র দ্বারা আচ্ছাদিত মোট এলাকা খুঁজে বের করার প্রোগ্রাম

  2. পাইথন প্রোগ্রাম a no দুইটির শক্তি কিনা তা খুঁজে বের করতে

  3. দুই বা ততোধিক তালিকার ইউনিয়ন খুঁজে পেতে পাইথন প্রোগ্রাম?

  4. দুটি তালিকায় অনুপস্থিত এবং অতিরিক্ত মান খুঁজে পেতে পাইথন প্রোগ্রাম?