Learning Scientific Programming with Python is intended to help scientists and engineers learn version 3 the Python programming language and its associated NumPy, SciPy, and Matplotlib libraries. No prior programming experience or scientific knowledge in any par- ticular field is assumed. However, familiarity with some mathematical concepts such as trigonometry, complex numbers and basic calculus is helpful to follow the examples and exercises.
The official website of Python contains full and easy-to-follow instructions for downloading Python. However, there are several full distributions which include the NumPy, SciPy and Matplotlib libraries (the "SciPy stack") to save you from having to download and install these yourself:
Anaconda is free (including for commerical use). It installs both Python 2 and Python 3, but the default version can be selected either before downloading as indicated on this web page, or subsequently using the ‘conda‘ command.
Enthought Canopy is a similar distribution with a free version and various tiers of paid-for versions including technical support and development software.