Python supports object-oriented programming through classes, objects, inheritance and polymorphism. Key concepts include: classes provide blueprints for objects with attributes and methods; inheritance allows classes to inherit attributes and methods from parent classes; polymorphism enables common interfaces for functions that can work on different objects. The document also discusses file handling in Python and different types of inheritance like single, multi-level, multiple and their syntax examples.