Resources
Supplementary class materials
“Python Programming — Getting Started”
This web page provides additional information and resources for attendees of the class. The lists here are not intended as exhaustive, nor should they be construed as endorsements, but they should help you get started.
Textbooks, etc.
- Here are several books which you can read for free. Depending on the book, you may be able to read it online or download a PDF file or e-book version. (Or check the Arlington public library or a good bookstore — they have dozens of books on the subject!)
- Python for Everybody — the outline for this course (2020 and earlier)
- Automate the Boring Stuff with Python
- The Big Book of Small Python Projects
- Python Programming Exercises, Gently Explained
- A Byte of Python
- The Python Game Book
- Think Python: How to Think Like a Computer Scientist,2nd edition
- How to Think Like a Computer Scientist: Learning with Python 3
- Dive Into Python 3
- Beginner's Python Cheat Sheets
- Practice Python — beginner Python exercises
- Programming in Python — 28 free video tutorials
Python Software
- Python is free software. Use these links to download Python for your own computer, regardless of whether it's running Windows, MacOS, or Linux.
- Python — this is the official Python distribution, which has everything you need to get started, including the IDLE development environment. Most books and tutorials are based on this. Be sure to download version 3.something, not version 2.
- pyCharm — some people prefer the programming environment features here. (You still need to install the base Python, above.) Be sure to download the free "Community" edition.
- PythonAnywhere — this is a version which runs in your Web browser, so no need to install anything on your computer. Sign up for a free "Beginner" account, which should be sufficient. Requires an Internet connection to use.
- replit.com — another free version which runs in your Web browser. Not as sophisticated, but runs in a web browser so no software installation required and therefore much simpler to deal with. (This is what we'using during class.)
- Pydroid 3 - IDE for Python 3 — for Android phones (pricey?)
- QPython 3L - Python for Android
- Pythonista 3 - for iPhone/iPad
- Pyto - for iPhone/iPad
Text Editors
- Many people prefer using a programming text editor to create and edit their Python programs, as they contain more useful features than the basic IDLE. Some of the textbooks suggest these, but if you're happy using IDLE (or pyCharm), no need to think about these. These are just a few of the very many good choices.
- Notepad++ — free editor for Windows
- Atom — "A hackable text editor for the 21st Century". Free for Windows, MacOS, Linux.
- Sublime Text — For Windows, MacOS, Linux. It's highly regarded, and although it costs, you can try it out for free (with no time restriction).
- Code with Mu: a simple Python editor for beginner programmers
Links for class hands-on exercises
Use these links to save typing as we work our way through the hands-on exercises in class. Each link opens a "repl" at replit.com. You won't be able to modify it, but you can click to "fork" it, giving you your own copy to work with.
- https://repl.it/@MrAColley/11-Output
- https://repl.it/@MrAColley/12-Variable-Assignment
- https://repl.it/@MrAColley/13-Variable-Assignment-Challenge
- https://repl.it/@MrAColley/14-Input-With-Variables
- https://repl.it/@MrAColley/21-Maths-part-1
- https://repl.it/@MrAColley/22-Maths-with-variables-1
- https://repl.it/@MrAColley/23-Changing-variables
- https://repl.it/@MrAColley/24-Maths-With-Input
- https://repl.it/@MrAColley/31-Selection-With-One-Condition
- https://repl.it/@MrAColley/32-Selection-With-Two-Outcomes
- https://repl.it/@MrAColley/33-Selection-With-Three-Or-More-Outcomes
- https://repl.it/@MrAColley/41-Introducing-While
- https://repl.it/@MrAColley/42-While-loops-with-counters
- https://repl.it/@MrAColley/51-Output-From-Lists
- https://repl.it/@MrAColley/52-Change-Items-In-A-List
- https://repl.it/@MrAColley/54-Add-and-Remove-From-Lists
- https://repl.it/@MrAColley/55-Adding-To-and-Removing-From-Lists
- https://repl.it/@MrAColley/61-Functions-With-Output
- https://repl.it/@MrAColley/62-Functions-That-Return-A-Value
- https://repl.it/@MrAColley/63-Functions-With-Arguments