python-basic

⌘K
  1. Home
  2. Docs
  3. python-basic
  4. Identity Operators (is,is not)

Identity Operators (is,is not)

দুইটা অবজেক্টকে compare করার জন্য Identity Operators ব্যবহার করা হয়। যদি অবজেক্ট এর মেমোরি লোকেশন আলাদা হয় তখন দুইটি অবজেক্টকে আলাদা আলাদা অবজেক্ট হিসাবে দেখে।

operatordescription
isসত্য হবে যখন দুইটা অবজেক্ট এর মেমোরি লোকেশন same হবে
Is notসত্য হবে যখন দুইটা অবজেক্ট এর মেমোরি লোকেশন আলাদা হবে

এটা বোঝার জন্য আমাদের পাইথন অবজেক্ট কে ভালোভাবে বুঝতে হবে python object

is (Python Operator )

a = 10
b = 20
print(a is b )
# আউটপুট : False

কিন্তু যদি immutable অবজেক্ট দুইটির ভ্যালু একই হয় তখন পাইথন মেমোরি অপ্টিমাইজ এর জন্য প্রথমে প্রথম অবজেক্ট তৈরী করবে এবং পরবর্তী ভ্যারিয়েবল এর জন্য নতুন কোন মেমোরি লোকেশন নেবে না প্রথম অবজেক্ট এর মেমোরি লোকেশন কে দ্বিতীয় অবজেক্ট এর মেমোরি লোকেশন হিসাবে সেট করবে।

a = 10
b = 10
print(a is b )
# আউটপুট : True

এটা যেভাবে কাজ করেছে :

একটা মেমোরি লোকেশন সেট করেছে পরবর্তীতে যখন দেখেছে b এর ভ্যালু a এর same value তখন b=a . অর্থাৎ b এর ভ্যালু a এর মেমোরি লোকেশন এ আছে। যখন অবজেক্ট এর মেমোরি লোকেশন আলাদা হয় তখন is মিথ্যা রিটার্ন করে।

is not (Python Operator )

is এর বিপরীত হলো is not . যখন দুইটা অবজেক্ট আলাদা হবে তখনি সত্য হবে।

a = 10
b = 10
print(a is not b )

How can we help?