Python is a dynamically typed, object-oriented programming language. It uses indentation to delimit blocks rather than curly braces. Key features include strong typing, dynamic typing, support for functions, exceptions, classes, inheritance and modules. Common data types include lists, dictionaries, tuples and strings. Control flow is implemented with conditional statements and loops. Functions can return multiple values using tuples. Object-oriented features include classes and inheritance. Exceptions are handled using try-except blocks. External libraries are imported using the import statement.