Course curriculum

  • 1

    Module 1: Installing and Starting Python

    • 1.1: Overview

    • 1.2: Installing Python

    • 1.3: Interactive Python

    • 1.4: Significant Whitespace

    • 1.5: Python Culture

    • 1.6: The Python Standard Library

    • 1.7: Summary

    • Installing and Starting Python Slides

  • 2

    Module 2: Scalar Types, Operators and Control Flows

    • 2.1: Overview

    • 2.2: Relational Operators

    • 2.3: Control Flow

    • 2.4: While Loops

    • 2.5: Summary

    • Scalar Type Operators and Control Flow Slides

  • 3

    Module 3: Introducing Strings, Collections and Iterations

    • 3.1: Overview

    • 3.2: String

    • 3.3: String Literals

    • 3.4: Bytes

    • 3.5: List

    • 3.6: Dictionary

    • 3.7: For Loop

    • 3.8: Putting It All Together

    • 3.9: Summary

    • Introducing Strings, Collections and Iterations Slide

  • 4

    Module 4: Modularity

    • 4.1: Overview

    • 4.2: Modules

    • 4.3: Functions

    • 4.4: Name

    • 4.5: The Execution Model

    • 4.6: Command Line Arguments

    • 4.7: Docstrings

    • 4.8: Comments

    • 4.9: Shebang

    • 4.10: Summary

    • Modularity Slides

  • 5

    Module 5: Objects and Types

    • 5.1: Overview

    • 5.2: Passing Arguments and Returning Values

    • 5.3: Function Arguments

    • 5.3: Function Arguments

    • 5.4: Python's Type System

    • 5.5: Scopes

    • 5.6: Everything is an Object

    • 5.7: Summary

    • Objects and Types

  • 6

    Module 6: Built-in Collections

    • 6.1: Overview

    • 6.2: Tuples

    • 6.3: Strings

    • 6.4: Ranges

    • 6.5: Lists

    • 6.6: Dictionaries

    • 6.7: Sets

    • 6.8: Protocols

    • 6.9: Summary

    • Built-in Collections Slides

    • Codes for Built-in Collections

  • 7

    Module 7: Exceptions

    • 7.1: Overview

    • 7.2: Exceptions and Control Flow

    • 7.3: Handling Exceptions

    • 7.4: Exceptions and Programmer Errors

    • 7.5: Re-raising Exceptions

    • 7.6: Exceptions and Part of the API

    • 7.7: Exceptions and Protocols

    • 7.8: Avoid Explicit Type Checks

    • 7.9: It's Easier to Ask Forgiveness Than Permission

    • 7.10: Cleanup Actions

    • 7.11: Platform Specific Code

    • 7.12: Summary

    • Exceptions Slide

  • 8

    Module 8: Iterations and Iterables

    • 8.1 Overview

    • 8.2: List and Set Comprehensions

    • 8.3: Dictionary Comprehensions

    • 8.4: Filtering Comprehensions

    • 8.5: Iteration Protocols

    • 8.6: Generator Functions

    • 8.7: Maintaining State in Generators

    • 8.8: Laziness and the Infinite

    • 8.9: Generator Expressions

    • 8.10: Iteration Tools

    • 8.11: Summary

    • Iteration and Iterables Slides

  • 9

    Module 9: Classes

    • 9.1: Overview

    • 9.2: Classes

    • 9.3: Defining Classes

    • 9.4: Instance Methods

    • 9.5: Instance Initializers

    • 9.6: A Second Class

    • 9.7: Collaborating Classes

    • 9.8: Booking Seats

    • 9.9: Methods for Implementation Details

    • 9.10: Object Oriented Design with Function Objects

    • 9.11: Polymorphism and Duck Typing

    • 9.12: Inheritance and Implementation Sharing

    • 9.13: Summary

    • Classes Slides

  • 10

    Module 10: File IO and Resource Managements

    • 10.1: Overview

    • 10.2: Opening Files

    • 10.3: Writing Text

    • 10.4: Reading Text

    • 10.5: Appending Text

    • 10.6: Iterating Over Files

    • 10.7: Closing Files with Finally

    • 10.8: With Blocks

    • 10.9: Binary Files

    • 10.10: Bitwise Operators

    • 10.11: Pixel Data

    • 10.12: Reading Binary Data

    • 10.13: File-like Objects

    • 10.14: Context Manager

    • 10.15: Summary

    • File IO and Resource Managements Slide

  • 11

    MTA Exam Objectives

    • MTA Exam Objectives