- Programming in Python
- Executing Code and Completing Exercises
- Introduction
- 1. Unit 1 - Getting Started
❱
- 1.1. Hello World
- 1.2. Comments
- 1.3. Objects, Types, Operators and Expressions
- 1.4. Basic Exceptions
- 1.5. Indentation, WhiteSpace and Blank Lines
- 1.6. Hello User
- 1.7. Simple IO
- 2. Unit 2 - The Basics Elements of Python
❱
- 2.1. Variables and Assignment
- 2.2. Statements vs Expressions
- 2.3. Numbers
- 2.4. Strings
- 2.5. Casting
- 2.6. The What's My Age Again (in Hours) Program
- 2.7. String Methods
- 2.8. String Indexing and Slicing
- 3. Unit 3 - Branching and Decisions
❱
- 3.1. If ... Else Statement
- 3.2. MP The Really Rubbish Password Program
- 3.3. Nested if Statements
- 3.4. Elif Statement
- 3.5. The Mood Face Program
- 3.6. Booleans
- 4. Unit 4 - Iteration (Loops)
❱
- 4.1. While Loops
- 4.2. The Number Guessing Game
- 4.3. The Less Rubbish Password Program
- 4.4. Ranges and Lists
- 4.5. For Loops
- 4.6. Break and Continue
- 4.7. The Sum Numbers Program
- 4.8. The Check Valid Input Program
- 5. Unit 5 - Functions
❱
- 5.1. Passing Unit Tests
- 5.2. Functions
- 5.3. More About Functions
- 5.4. The Maximum of a List Program
- 5.5. Scope
- 5.6. Keyword Arguments and Default Values
- 5.7. Specification and Docstrings
- 5.8. The Receive and Return Program
- 5.9. Passing by Assignment
- 6. Unit 6 - Lists, Tuples, Sets, and Dictionaries
❱
- 6.1. Lists
- 6.2. The High Scores Program
- 6.3. More on Lists
- 6.4. Tuples
- 6.5. The High Scores 2 Program
- 6.6. Sets
- 6.7. Dictionaries
- 6.8. The Geek Translator Program
- 6.9. The Frequency Count Program
- 6.10. List and Dictionary Comprehension
- 7. Unit 7 - Modules and Files
❱
- 7.1. Module Basics
- 7.2. Creating a Module
- 7.3. The Calculator Program
- 7.4. Reading Files
- 7.5. Writing to Files
- 7.6. Serialisation with JSON
- 8. Unit 8 - Decomposition, Abstraction, Recursion and Lambda (Advanced)
❱
- 8.1. Decomposition and Abstraction
- 8.2. The Frequency Count Program 2.0
- 8.3. args and kwargs
- 8.4. Lambda Functions, Map and Filter
- 8.5. Recursion 101
- 8.6. Memoization (Advanced)
- 8.7. Closures and Decorators (Advanced)
- 9. Unit 9 - Object Oriented Programming 1 (OOP)
❱
- 9.1. Classes, Methods and Objects
- 9.2. Constructors and Attributes
- 9.3. Magic Methods
- 9.4. Class Attributes vs Instance Attributes
- 9.5. Instance Methods vs Static Methods
- 9.6. The Critter Program
- 9.7. Encapsulation
- 9.8. The Critter Caretaker Program
- 9.9. The Critter Zoo Program
- 10. Unit 10 - Object Oriented Programming 2 (OOP)
❱
- 10.1. Sending and Receiving Messages
- 10.2. Composition and Aggregation
- 10.3. The Playing Cards Program 1
- 10.4. Inheritance
- 10.5. The Playing Cards Program 2
- 10.6. Method Overriding and Polymorphism
- 10.7. The Playing Cards Program 3
- 10.8. Modules and Classes
- 10.9. The Blackjack Game