The integer 2 has an __add__ method:
2
__add__
>>> \"__add__\" in dir(2) True
... but calling it raises a SyntaxEr
Another way to get around 2. being parsed as a float is to insert a space between the 2 and the .
2.
.
>>> 2 .__add__(3) 5