Syllabus

Introduction

  • file explorer
  • terminal window
  • text editor
  • interpreter

Functions, Variables

  • functions, arguments (positional, named), return values [None?]
    • def, return
  • comments
  • variables, types
    • =
    • str, int, float, bool
    • str.*
  • global variables
    • global
  • type hints?

Conditionals

  • conditionals, Boolean expressions
    • if, elif, else
    • or, and, not
    • <, >, ==, !=, <=, >=
  • sequences
    • list, dict [for looking up values from keys], len [loops instead?], range, tuple, set?
  • match

Loops

  • loops [over list and dict]
    • while, for
  • None
  • break, continue
  • list/dict comprehensions
  • .sort? lambda function for key:?

Exceptions

  • try, except, else, finally [maybe in file I/O?]
  • pass
  • raise

Unit Tests

  • assert
  • debugging

Libraries

  • modules
  • packages
  • import
  • random, statistics, sys [command-line args], requests [APIs, HTTP status codes]
  • packages with index.py

File I/O

  • os
  • csv

Regular Expressions

  • re

Classes

  • classes, objects/instances, methods
  • class
  • inheritance, multiple inheritance
  • properties
  • decorators

Conclusion


[Notes to Self]

Additional Ideas for Exercises

  • implement stack
  • implement queue
  • ord, chr

Not Covered

  • bitwise operators
  • generators, yield
  • complex, bytes
  • args, kwargs