1. Division. Python 3 does floating point division between two integers if you specify the division with two slashes (//).
However, if we want Python 2 to do floating point division by default , we can use the handy function:

>> from__future__ import division
>>> 3/2
1.5

2. Printing. In Python 3, you have to enclose any print statements in parentheses, e.g., print(‘hello’) in Python 3 instead of print ‘hello’ in Python 2.

3. Range. In Python 3, the range function is an iterable object. We didn’t really go into what this means in this post. But note that it won’t return a list if you try to print it.

Obviously there are a bunch more differences between Python 2 and 3, most of which are beyond the scope of this post. Note that differences in Python 3 have resulted in significantly faster code compared to Python 2.