Python-Arduino USB communication floats problem

panagiotis96:
I think that the problem is on arduino.

The problem is that you mis-understand how floating point variables are stored. They are NOT precise.

To give you a practical example, the banking system has never used floating point maths to record dollars and cents (and that's only 2 decimal places) because it would constantly give rounding errors.

If you need precision store the number as an integer and if you want "decimal places" then store (for example) 1234.5678 as 12345678

...R