/python-core

Intermediate course introducing Object Oriented Programming (OOP) principles applied to the Python language. Recommend to learners with previous experience.

Primary LanguageJupyter NotebookMIT LicenseMIT

Object Oriented Programming (DIEF, UNIMORE)

Software, Tutorials, Exercises

Python

Misc

Books

  • Head First Python; Barry; O'Reilly (intermediate)
  • Fluent Python; Ramalho; O'Reilly (advanced)

Videos

Modules

[M1] Basics

  • The Python environment
  • Variables, constants
  • Numeric, strings, boolean literals
  • Flow control statements
  • Functions, parameter passing
  • Decorators
  • Exceptions
  • I/O Basics

[M2] Data Structures

  • Iterable, Iterator, Generator
  • List, Tuple, Set, Dictionary
  • Generator, List, Dictionary Comprehension
  • Itertools

[M3] Object Oriented Programming

  • Classes, objects, informal interfaces
  • Getters, setters, properties
  • Encapsulation, inheritance, polymorphism
  • Modules and packages