Liutauras Vilda wrote:
Edit: don't forget to choose version...
Right, 2 & 3 aren't fully compatible. Ver. 2.7.x is in common use and I think continues to be updated.
Some more recent books may use version 3, so watch out for this. For beginners, most of the differences between v.2 and v.3 are fairly minor, and these days I think most of the major libraries have been updated to offer v2 and v3 alternatives. So don't worry too much about this, but just make sure you are aware that there is a difference and you know which version you are working with.
I would also suggest you look at the excellent Anaconda Scientific Python distribution which is available for free in version 2 and version 3 bundles. This is a nice distribution that allows you to install a load of compatible Python tools and libraries easily on your local machine. Anaconda typically installs itself for your local user by default, and you can choose to add the Anaconda location to your user's OS path, so you can install and use Anaconda Python without necessarily over-writing an existing Python installation or affecting other users on your system. This makes it easy to try out different Python versions if you want, for example, and it's easy to remove Anaconda if you decide you want to use a different distribution/version.
Anaconda supports 340 Python packages, many of which are installed by default while the others can be installed from the Anaconda repositories using their "conda" installer which also handles dependencies for you. These are all standard open source Python packages, which are available from other sources as well, but Anaconda makes it easier to install them consistently for your current version of Python. If you need a package that is not in the Anaconda repositories, you can still install it from the global Pypi index using "pip install" - Anaconda includes a copy of PIP so you can install Pypi packages into your local Anaconda installation if necessary.
I used to use vanilla Python installations, but got fed up dealing with dependency problems and version compatibility issues, so these days I just use Anaconda if possible and I don't have to worry about that stuff any more.