এই আর্টিকেলে আমরা অবজেক্ট কম্প্যারিজন অর্থাৎ is অপারেটর এবং ইকুয়ালিটি অপারেটর == এর মধ্যে পার্থক্য শিখব।
ইকুয়ালিটি অপারেটর পাস করা আর্গুমেন্টের মান বেসισ কাজ করে, একদিকে is অপারেটর পাস করা দুটি অবজেক্টের রেফারেন্স কম্পেয়ার করে।
ইকুয়ালিটি অপারেটরের ক্ষেত্রে আর্গুমেন্টের কন্টেন্ট কম্পেয়ার করা হয়, তাদের রেফারেন্স উপেক্ষা করা হয় অর্থাৎ একই কন্টেন্ট যদি ভিন্ন লোকেশনে স্টোর করা থাকে তবে সেগুলো সমান বলে বিবেচনা হয়, কিন্তু is অপারেটর ব্যবহার করার সময় রেফারেন্সই প্রাধান্য পায়।
চলুন নিচের ইমপ্লিমেন্টেশনে ধারণাটি পর্যবেক্ষণ করি।
উদাহরণ
list_1 = ['t', 'u', 't', 'o', 'r']
list_2 = ['t', 'u', 't', 'o', 'r']
list_3 = list_1
if (list_1 == list_2):
print("True")
else:
print("False")
if (list_1 is list_2):
print("True")
else:
print("False")
if (list_1 is list_3):
print("True")
else:
print("False")
আউটপুট
True False True

সभी ভেরিয়েবল লোকাল স্কোপে ঘোষণা করা হয়েছে এবং তাদের রেফারেন্স উপরের চিত্রে দেখা যাচ্ছে।
উপসংহার
এই আর্টিকেলে আমরা পাইথন অবজেক্ট কম্প্যারিজন ইকুয়ালিটি অপারেটর এবং রেফারেন্সিং অপারেটর (is) ব্যবহার করে শিখেছি।