Python 2 vs Python 3: Key Differences and Upgrades
☰Fullscreen
Table of Content:
Print:
Python 2
treats “print” as statement rather a function.Python 3
explicitly treats “print” as a function.
Integer Division:
Python 2
treats numbers without any digits. (Output of expression 3 / 2 is 1, not 1.5). To get the result 1.5, you would have to write 3.0 / 2.0.Python 3
evaluates 3 / 2 as 1.5 by default, which is more intuitive for new programmers.
List Comprehension Loop Variables:
Common name for the variables that is iterated over in a list comprehension as a global variable get interchanged. This is fixed in Python 3.
Unicode Strings:
By default Python 3 stores strings as Unicode unlike Python 2.
Raising Exceptions:
Python 3 requires different syntax for raising exceptions.
- Python 2:
raise IOError, “some error message”
- Python3:
raise IOError(“some error message”)