This repository contains a collection of materials for teaching/learning Python 3 (3.10+). They have been modified from the resources of Jerry-git to whom I owe many thanks ππΌ.
Since replit.com went the way of extreme freemium π and many school network technicians will not allow installing of Python directly on school systems as security measure, Jupyter notebooks offer a good alternative to an online IDE.
These are my Key stage 5 resources. My Keystage 4 resources can be found here.
- Have Python 3.10 or newer installed. You can check the version by typing
python3 --versionin your command line. You can download the latest Python version from here.
or
- All exercise links will be linked to using Colab (Google's online jupyter notebook) although this is a work in progress.
-
printing [slides] [exercise] -->
-
Assignment [slides] [exercises] -->
-
Concatenation [slides] [exercises] -->
-
Inputs [slides] [exercises] -->
-
Numbers [exercises] -->
-
Conditionals [slides] [exercises] -->
-
Iteration [slides] [exercises] -->
-
String Methods [slides] [exercise] -->
-
Lists [slides] [exercise] -->
-
Functions [slides] [exercises] -->
-
Cluedo template [slides] [exercises] [answers] -->
-
File IO [Slides] [notebook] [exercise] -->
-
Dictionaries [Slides] [notebook] [exercise] [answers]
-
Practice Tasks [Slides] [exercise1] [answers] [exercise2] [[answers]] [exercise3] [answers]
-
Recursion [Slides] [exercises] [exercise] -->
-
OOP:1 Initiation [Slides] [exercises] -->
-
OOP:2 OOP Concepts [Slides] [notebook] [exercises] -->
-
OOP:3 More OOP Concepts [Slides] [exercises] -->
-
OOP:4 More OOP Practice [Slides] [exercises] [answers] -->
These are tasks from the original notebook by Professor Jerry which I have not touched.
Python is a powerful language which contains many features not presented in most other programming languages. Idiomatic section will cover some of these Pythonic features in detail. These materials are especially useful for people with background in other programming languages.
- Idiomatic loops [notebook]
- Idiomatic dictionaries [notebook]
- Idiomatic Python - miscellaneous part 1 [notebook]
- Idiomatic Python - miscellaneous part 2 [notebook]
- Idiomatic Python exercise [exercise]
A list of best development practices for Python projects. Most of the practices listed here are also applicable for other languages, however the presented tooling focuses mainly on Python.