Member-only story

Why is it not same in Python?

Python Coding
2 min readSep 24, 2024

--

Explanation:

a = 0.2 + 0.4:

  • This line adds 0.2 and 0.4, resulting in 0.6.
  • However, due to floating-point precision limitations in computers, the actual value stored in a might be slightly different from the exact mathematical value of 0.6.

b = 0.6:

  • This line assigns the value 0.6 directly to b.

print(a == b):

  • This line compares the values of a and b. Since the values might differ slightly due to floating-point precision, the comparison evaluates to False.

a = 0.1 + 0.3:

  • This line adds 0.1 and 0.3, resulting in 0.4.
  • Again, due to floating-point precision, the actual value stored in a might be slightly different from the exact mathematical value of 0.4.

b = 0.4:

  • This line assigns the value 0.4 directly to b.

print(a == b):

  • This line compares the values of a and b. In this case, the values might be close enough within the floating-point precision, so the comparison evaluates to True.

Key Points:

  • Floating-point numbers are represented in binary format with limited precision, which can lead to slight inaccuracies when performing arithmetic operations.
  • Comparing floating-point numbers for exact equality can be unreliable due to these precision limitations.
  • If you need to compare floating-point numbers for equality, it’s often better to check if they are within a certain tolerance range rather than expecting exact equality.

--

--

Python Coding
Python Coding

Written by Python Coding

Learn python tips and tricks with code I Share your knowledge with us to help society. Python Quiz: https://www.clcoding.com/p/quiz-questions.html

No responses yet