Python > Core Python Basics > Basic Operators > Comparison Operators (==, !=, >, <, >=, <=)

Comparison Operators in Python

This code snippet demonstrates the use of comparison operators in Python. Comparison operators are used to compare two values, and they return a boolean value (True or False) based on the condition.

Basic Comparison Operators

This section illustrates the fundamental comparison operators in Python. Each operator evaluates a relationship between two variables and returns a boolean value. The `f-string` is used for easy output formatting.

x = 5
y = 10

print(f'x = {x}, y = {y}')

print('x == y:', x == y)  # Equal to
print('x != y:', x != y)  # Not equal to
print('x > y:', x > y)   # Greater than
print('x < y:', x < y)   # Less than
print('x >= y:', x >= y)  # Greater than or equal to
print('x <= y:', x <= y)  # Less than or equal to

Explanation of Operators

  • == (Equal to): Returns True if the values of two operands are equal, otherwise False.
  • != (Not equal to): Returns True if the values of two operands are not equal, otherwise False.
  • > (Greater than): Returns True if the value of the left operand is greater than the value of the right operand, otherwise False.
  • < (Less than): Returns True if the value of the left operand is less than the value of the right operand, otherwise False.
  • >= (Greater than or equal to): Returns True if the value of the left operand is greater than or equal to the value of the right operand, otherwise False.
  • <= (Less than or equal to): Returns True if the value of the left operand is less than or equal to the value of the right operand, otherwise False.

Concepts Behind the Snippet

The core concept is boolean logic. Comparison operators evaluate to a boolean result which is either True or False. These boolean values are essential for controlling program flow with conditional statements like if, elif, and else.

Real-Life Use Case

Consider an e-commerce website where you need to determine if a user is eligible for a discount based on their total purchase amount. Comparison operators can be used to check if the total is greater than or equal to a certain threshold to apply the discount.

Best Practices

  • Always ensure that the data types being compared are compatible. Comparing a string and an integer directly might lead to unexpected results or errors.
  • Use parentheses to improve readability when combining multiple comparison operations. For example: (x > 0) and (y < 10).

Interview Tip

Be prepared to explain the difference between == (equality) and is (identity). == checks if the values of two objects are the same, while is checks if two objects refer to the same memory location. Also, be ready to discuss operator precedence in Python.

When to Use Them

Use comparison operators whenever you need to make a decision based on the relationship between two values. This is fundamental for any kind of conditional logic, data filtering, and validation in your programs.

FAQ

  • What happens if I compare different data types?

    Python attempts to perform the comparison, but the behavior depends on the types involved. Comparing numbers to strings often raises a TypeError. It's best to explicitly cast the data types to be comparable if needed.
  • Can I chain comparison operators?

    Yes, Python allows chaining comparison operators. For example, 1 < x < 10 is a valid expression. It's equivalent to (1 < x) and (x < 10).