পাইথন লিস্ট ব্যবহার করে ডেটা ম্যানিপুলেশনের সময় আমরা এমন পরিস্থিতিতে পড়ি যখন দুটি লিস্ট একদম আলাদা কিনা বা তাদের মধ্যে কোনো কমন এলিমেন্ট আছে কিনা জানতে হয়। এটি নিচের পদ্ধতিগুলো দিয়ে বের করা যায়।
in ব্যবহার করে
একটি for লুপে in ক্লজ ব্যবহার করে চেক করা হয় একটি এলিমেন্ট লিস্টে আছে কিনা। আমরা এই লজিককে বড় করি দুটি লিস্টের এলিমেন্ট কমপেয়ার করার জন্য। প্রথম লিস্ট থেকে একটি এলিমেন্ট বেছে নেওয়া হয় এবং সেটি দ্বিতীয় লিস্টে আছে কিনা চেক করা হয়। তাই নেস্টেড for লুপ ব্যবহার করা হয়।
উদাহরণ
# লিস্ট ডিক্লেয়ার
list1 = ['a', 4, '%', 'd', 'e']
list2 = [3, 'f', 6, 'd', 'e', 3]
list3 = [12, 3, 12, 15, 14, 15, 17]
list4 = [12, 42, 41, 12, 41, 12]
# কমন এলিমেন্ট চেক করার ফাংশন
def commonelems(x, y):
common = 0
for value in x:
if value in y:
common = 1
if not common:
return "The lists have no common elements"
else:
return "The lists have common elements"
# দুটি লিস্ট চেক
print("Comparing list1 and list2:")
print(commonelems(list1, list2))
print("\n")
print("Comparing list1 and list3:")
print(commonelems(list1, list3))
print("\n")
print("Comparing list3 and list4:")
print(commonelems(list3, list4))
উপরোক্ত কোড চালালে নিচের ফলাফল পাওয়া যাবে
আউটপুট
Comparing list1 and list2: The lists have common elements Comparing list1 and list3: The lists have no common elements Comparing list3 and list4: The lists have common elements
সেট ব্যবহার করে
দুটি লিস্টে কমন এলিমেন্ট আছে কিনা বের করার আরেকটি পদ্ধতি হলো সেট ব্যবহার। সেটে ইউনিক এলিমেন্টের আনঅর্ডার্ড কালেকশন থাকে। তাই লিস্টগুলোকে সেটে কনভার্ট করে একটি নতুন সেট তৈরি করি দেওয়া সেটগুলো কম্বাইন করে। যদি তাদের কমন এলিমেন্ট থাকে তবে নতুন সেট খালি হবে না।
উদাহরণ
list1 = ['a', 4, '%', 'd', 'e']
list2 = [3, 'f', 6, 'd', 'e', 3]
# সেটে কনভার্ট করে কমন এলিমেন্ট চেক করার ফাংশন
def commonelem_set(z, x):
one = set(z)
two = set(x)
if (one & two):
return ("There are common elements in both lists:", one & two)
else:
return ("There are no common elements")
# any() ফাংশন ব্যবহার করে চেক
def commonelem_any(a, b):
out = any(check in a for check in b)
if out:
return "The lists have common elements."
else:
return "The lists do not have common elements."
z = commonelem_set(list1, list2)
print(z)
print(commonelem_any(list1, list2))
উপরোক্ত কোড চালালে নিচের ফলাফল পাওয়া যাবে
আউটপুট
('There are common elements in both lists:', {'d', 'e'})
The lists have common elements.