This is a tutorial in the form of Jupyter notebooks that allows you to modify and run the examples. We'll be following this tutorial in the lectures. To use it, unpack the zip file to a folder where your notebooks are kept (typically under your user or home directory). This is CC0 licensed. From: https://github.com/jakevdp/WhirlwindTourOfPython
The text is available as Jupyter Notebooks on GitHub. The publisher now only makes a one-page HTML version available. But the Internet Archive has the PDF version.
This is the Python tutorial that is part of the "official" Python documentation from python.org. It is also installed locally when you install Python (if the installation included the documentation).
Added material on distinguishing between positional and keyword arguments in function definitions.
Version 2: compatible with Python 3.7, the version available on AppsAnywhere on May 3.
Version 2: improved testing code for Question 3. If you've already submitted a solution for the previous version you do not have to submit again.
The marking code in these labs uses a hash-based message authentication code.
Links to some good (and free) e-books on Python.
This is a textbook for an introductory computer science course that uses Python. It's a good reference if you need introductory information on programming in general.
A nice interactive textbook based on an earlier version of the Think Python book. Runs Python code in your browser.
An introduction to Python with several chapters describing how to automate computer-based tasks involving different types of documents (spreadsheets, PDF files), software (browsers, word processors) and network protocols (web, e-mail).
Interactive, Python-based Computer Science textbook covering the traditional first-year CS curriculum. Too detailed for this course but might be useful as a reference for specific algorithms or data structures.
This is a well-reviewed book but has a steep learning curve. It's useful if you need more in-depth information on a particular topic.
We'll be using Python 3 (version 3.10 or later) and the Jupyter Notebook interface in the lectures and labs.
miniconda is an installer for Python and many "data science" packages. It's available free for Windows, Mac and Linux. Installation requires about 300 MB and a few minutes. After installing miniconda you'll need to install Jupyter notebook: in the Anaconda command-line prompt window type the command: conda install jupyter notebook
Anaconda is a collection of software that includes Python, Jupyter Notebook and many, many other "data science" packages. It will take up about 3GB of disk space and a while (15? minutes) to install. Avoid the upsell nonsense on the site; everything we're using is open-source software.