For working professionals
For fresh graduates
More
13. Print In Python
15. Python for Loop
19. Break in Python
23. Float in Python
25. List in Python
27. Tuples in Python
29. Set in Python
53. Python Modules
57. Python Packages
59. Class in Python
61. Object in Python
73. JSON Python
79. Python Threading
84. Map in Python
85. Filter in Python
86. Eval in Python
96. Sort in Python
101. Datetime Python
103. 2D Array in Python
104. Abs in Python
105. Advantages of Python
107. Append in Python
110. Assert in Python
113. Bool in Python
115. chr in Python
118. Count in python
119. Counter in Python
121. Datetime in Python
122. Extend in Python
123. F-string in Python
125. Format in Python
131. Index in Python
132. Interface in Python
134. Isalpha in Python
136. Iterator in Python
137. Join in Python
140. Literals in Python
141. Matplotlib
144. Modulus in Python
147. OpenCV Python
149. ord in Python
150. Palindrome in Python
151. Pass in Python
156. Python Arrays
158. Python Frameworks
160. Python IDE
164. Python PIP
165. Python Seaborn
166. Python Slicing
168. Queue in Python
169. Replace in Python
173. Stack in Python
174. scikit-learn
175. Selenium with Python
176. Self in Python
177. Sleep in Python
179. Split in Python
184. Strip in Python
185. Subprocess in Python
186. Substring in Python
195. What is Pygame
197. XOR in Python
198. Yield in Python
199. Zip in Python
The identity operator in Python is used to compare the memory location of two objects. It checks whether two variables refer to the same object in memory.
Many beginners confuse it with equality operators, but identity operators focus on object identity, not the content comparison.
The solution lies in understanding their core difference. In this tutorial we’ll look at what is identity operator in Python with example, with real identity operator examples to guide you.
With the help of real identity operator examples, you’ll improve your Python coding skills and write more efficient code.
“Enhance your Python skills further with our Data Science and Machine Learning courses from top universities — take the next step in your learning journey!”
In Python, there are two main identity operators used to compare objects: is and is not.
Let's dive into each of them with identity operator examples and see how they work in practice.
The is operator checks if two variables refer to the same object in memory. It returns True if both variables point to the same object, otherwise it returns False.
Let’s see an example of how the is operator works:
a = [1, 2, 3] # Creating a list
b = a # Assigning b to reference the same list as a
c = [1, 2, 3] # Creating a new list with same content
print(a is b) # Output: True
print(a is c) # Output: False
Output:
TrueFalse
Explanation:
The is not operator is the opposite of the is operator. It returns True if two variables do not refer to the same object in memory, and False if they do.
Here’s how you can use the is not operator:
a = [10, 20, 30]
b = a
c = [10, 20, 30]
print(a is not b) # Output: False
print(a is not c) # Output: True
Output:
FalseTrue
Explanation:
When to Use Identity Operators
“Start your coding journey with our complimentary Python courses designed just for you — dive into Python programming fundamentals, explore key Python libraries, and engage with practical case studies!”
In Python, membership operators are used to test if a value or variable is present in a sequence, such as a list, string, tuple, or dictionary. The two primary membership operators in Python are in and not in. These operators are simple yet powerful tools for checking membership and are widely used in various programming tasks.
Let’s explore these two operators in more detail.
The in operator checks if a specified value exists in a sequence (such as a list, tuple, string, or dictionary). It returns True if the value is found, and False if it is not.
Here’s an example of how the in operator works:
fruits = ["apple", "orange", "strawberry"]
# Check if "orange" is in the list
result = "orange" in fruits
print(result) # Output: True
# Check if "banana" is in the list
result = "banana" in fruits
print(result) # Output: False
Output:
TrueFalse
Explanation:
The not in operator is the opposite of in. It checks if a specified value does not exist in a sequence. It returns True if the value is absent, and False if it is present.
Let’s see how the not in operator works:
fruits = ["apple", "banana", "cherry"]
# Check if "orange" is not in the list
result = "orange" not in fruits
print(result) # Output: True
# Check if "banana" is not in the list
result = "banana" not in fruits
print(result) # Output: False
Output:
TrueFalse
Explanation:
Why Use Membership Operators?
In Python, you can also use the contains() method to check if a particular item exists within a container, like a list, tuple, or dictionary. This method is commonly used in various scenarios to check for membership, but it differs from identity operators like is and is not. While the identity operators check object identity, contains() checks if an object is present within a collection.
Here’s an example of how you can use the contains() method in Python:
import operator
# Defining a list
numbers = [1, 2, 3, 4, 5]
# Checking if 3 is in the list
result = operator.contains(numbers, 3)
print(result) # Output: True
# Checking if 10 is in the list
result = operator.contains(numbers, 10)
print(result) # Output: False
Output:
TrueFalse
Explanation:
The contains() method, as seen in identity operator examples, works as a more general-purpose operator for checking membership in containers.
When to Use contains() Method
Let’s take a look at how operator.contains() compares with the built-in in operator:
numbers = [1, 2, 3, 4, 5]
# Check if 3 is in the list
print(3 in numbers) # Output: True
# Check if 10 is in the list
print(10 in numbers) # Output: False
Output:
TrueFalse
Explanation:
In Python, == and is are both used to compare objects, but they have distinct purposes.
Below is a detailed comparison in tabular form to help you understand the difference between == and is.
Operator | == (Equality) | is (Identity) |
Purpose | Checks if two objects have the same value | Checks if two objects are the same object in memory |
Compares | The values of the two objects | The memory location of the two objects |
Returns | True if the values are equal, False otherwise | True if both objects are the same in memory, False otherwise |
When to Use | Use when you want to check if two objects have equivalent content | Use when you want to check if two variables refer to the same object in memory |
Example | a == b checks if the values in a and b are the same | a is b checks if a and b are the same object in memory |
Example 1: Using == and is with Integers
a = 1000
b = 1000
# Using '=='
print(a == b) # Output: True
# Using 'is'
print(a is b) # Output: False
Explanation:
Example 2: Using == and is with Strings
a = "hello"
b = "hello"
# Using '=='
print(a == b) # Output: True
# Using 'is'
print(a is b) # Output: True
Explanation:
Example 3: Using == and is with Lists
a = [1, 2, 3]
b = [1, 2, 3]
# Using '=='
print(a == b) # Output: True
# Using 'is'
print(a is b) # Output: False
Explanation:
Also Read: What Is Mutable And Immutable In Python?
The identity operator in Python is used to compare if two variables point to the same object in memory. For example, a is b checks if a and b refer to the same object.
Yes! In the example a = [1, 2, 3] and b = a, a is b returns True because both variables refer to the same object in memory.
== checks if the values of two objects are equal, while is checks if they are the same object in memory. Use is for identity and == for equality.
Use is when you want to check if two variables refer to the same object in memory, not just if their values are equal.
For small immutable objects, Python optimizes memory, so is may return True even if the variables are distinct. It's safer to use == for comparing values.
No, use == to compare the contents of lists or dictionaries. is only checks if two variables point to the same object, not if their contents are identical.
The is not operator checks if two variables do not refer to the same object in memory. It returns True if they are different objects.
Yes, the identity operator works for functions. Use is to check if two function references point to the same function object in memory.
You can use the equality operator == to compare values, or != to check if they are different, which is not related to their memory location.
Even if two objects have the same value, is will return False unless they point to the same memory location. This is an important distinction in identity operator examples.
Understanding what is identity operator in Python with example helps avoid mistakes when comparing objects and allows you to manage memory and references more effectively in your programs.
Take our Free Quiz on Python
Answer quick questions and assess your Python knowledge
Author
Talk to our experts. We are available 7 days a week, 9 AM to 12 AM (midnight)
Indian Nationals
1800 210 2020
Foreign Nationals
+918045604032
1.The above statistics depend on various factors and individual results may vary. Past performance is no guarantee of future results.
2.The student assumes full responsibility for all expenses associated with visas, travel, & related costs. upGrad does not provide any a.