Advanced Python Programming


  Course for industry, software engineers

  Time to complete the course: 18 hours 

  Online teaching

  Language: English

Register by October 2022

About this course

Specific Skills Acquired: Participants of the course will gain knowledge and skills in using a number of specific constructions of the Python language. In particular, the course will address the issues of functional and object-oriented decomposition of program code, which will make the code much more flexible and supportable.

General Objectives: This course is aimed at developers who use Python to solve everyday problems and want to gain a better understanding of the concepts and constructions of language. The course includes discussion of such aspects of functional programming as anonymous functions, locking, currying and composition, as well as of object-oriented programming including multiple inheritance, super() calls, magic methods, operator overloading, etc.

Course content

  • Function as first-class object
  • Namespaces and LEGB rule
  • Passing parameters to a function
  • Functional idioms: map, filter, reduce
  • Closures
  • Decorators
  • Class implementation. Encapsulation, inheritance, polymorphism.
  • Multiple inheritance, MRO, super()
  • Operators overriding, magic methods
  • Attribute access, descriptors, object creation
  • Meta-classes