Python 2.x
Python 2.0 was released on 16 October 2000, and included many major new features including a full garbage collector and support for Unicode. With this release the development process was changed and became more transparent and community-backed.
Python 3.x
Python 3.0 (also called Python 3000 or py3k), a major, backwards-incompatible release, was released on 3 December 2008 after a long period of testing. Many of its major features have been backported to the backwards-compatible Python 2.6 and 2.7.
Python 2 | Python 3 |
---|---|
Legacy | The Future |
Permanently in maintenence | New features will get added |
Modules are made to work with the Python 2.x. (Some of the features are not portable to Python 3.x.) |
Modules are written for both 2 and 3 (most of the packages are backward compatible) |
Very limited 3rd party module support | Abundant 3rd party libraries |
More Documentation to get started | You will become an early adopter if you start using it now. |
Most of the machines comes with Python 2.7 installed. (Ubuntu & MAC) | You need to manually install Python 3.3 |
Django users will recommend Python 2.x. | Django now "experimentally" supports Python 3.2 |
Summary
-
Your main goal should be just to learn Python. Be it 2.7 or 3.3. Once you get a command over the language, understanding both versions will be a matter of time.
-
It doesn’t really matter whether you use Python 2.7 or Python 3 If you do not use old features in Python 2.7, you can just 2to3 your code to make it run on Python 3.
-
I would recommend learning Python 3.x if you are a beginner.
*https://wiki.python.org/moin/Python2orPython3
- http://learntocodewith.me/programming/python/python-2-vs-python-3/
- http://programmers.stackexchange.com/questions/102999/should-we-use-python-2-6-or-2-7-or-3-x
- https://www.youtube.com/watch?v=f_6vDi7ywuA
- http://www.quora.com/What-are-the-pros-and-cons-of-Python-2-7-6-versus-3-3/answer/Cameron-Macleod?srid=Xl5D&share=1