এই আর্টিকেলে আমরা set() ডেটা টাইপের ওপর isdisjoint() ফাংশন বাস্তবায়ন শিখব। এই ফাংশন চেক করে আর্গুমেন্ট হিসেবে পাস করা সেটগুলোতে কোনো কমন এলিমেন্ট আছে কিনা। কমন এলিমেন্ট পাওয়া গেলে False রিটার্ন করে, নাহলে True।
isdisjoint() ফাংশন সেটের পাশাপাশি লিস্ট, টাপল ও ডিকশনারি ইনপুট আর্গুমেন্ট হিসেবে নিতে পারে। এই টাইপগুলো পাইথন ইন্টারপ্রেটার ইমপ্লিসিটলি সেট টাইপে রূপান্তর করে।
সিনট্যাক্স
.isdisjoint( )
রিটার্ন ভ্যালু
বুলিয়ান True/False
উদাহরণ
# নমুনা সেট ডিক্লেয়ারেশন
set_1 = {'t','u','t','o','r','i','a','l'}
set_2 = {'p','o','i','n','t'}
set_3 = {'p','y'}
# দুটি সেটের ডিসজয়েন্ট চেক
print("set1 and set2 are disjoint?", set_1.isdisjoint(set_2))
print("set2 and set3 are disjoint?", set_2.isdisjoint(set_3))
print("set1 and set3 are disjoint?", set_1.isdisjoint(set_3))আউটপুট
set1 and set2 are disjoint? False set2 and set3 are disjoint? False set1 and set3 are disjoint? True
ব্যাখ্যা
যেহেতু set_1 ও set_2-তে কমন এলিমেন্ট রয়েছে, তাই False। set_2 ও set_3-এর তুলনাতেও একই। কিন্তু set_1 ও set_3-তে কোনো কমন এলিমেন্ট নেই, তাই True।
এখন অন্য টাইপের ইটারেবল নিয়ে আরেকটি উদাহরণ দেখি।
নোট: বাইরের set_1 অবশ্যই সেট টাইপের হতে হবে যাতে ইন্টারপ্রেটার বুঝতে পারে সেটের মধ্যে তুলনা হচ্ছে। ভিতরের আর্গুমেন্ট যেকোনো টাইপ হতে পারে যা ইমপ্লিসিটলি সেটে রূপান্তরিত হবে।
উদাহরণ
# নমুনা ইটারেবল ডিক্লেয়ারেশন
set_1 = {'t','u','t','o','r','i','a','l'}
set_2 = ('p','o','i','n','t')
set_3 = {'p':'y'}
set_4 = ['t','u','t','o','r','i','a','l']
# ডিসজয়েন্ট চেক
print("set1 and set2 are disjoint?", set_1.isdisjoint(set_2))
print("set2 and set3 are disjoint?", set_1.isdisjoint(set_3))
print("set1 and set3 are disjoint?", set_1.isdisjoint(set_4))আউটপুট
set1 and set2 are disjoint? False set2 and set3 are disjoint? True set1 and set3 are disjoint? False
এখানেও কমন এলিমেন্ট খুঁজে বের করে ডিজায়ারড আউটপুট দেওয়া হয়েছে।
উপসংহার
এই আর্টিকেলে আমরা পাইথনে isdisjoint() ফাংশন ব্যবহার এবং কোন কোন আর্গুমেন্ট টাইপ তুলনায় গ্রহণযোগ্য তা শিখেছি।