I will start by regurgitating Wikipedia's definition say about Object-oriented programming (OOP) and then write my own interpretation as (OOP) relates to Python more specifically. Wikipedia says (OOP) is a programming paradigm that represents concepts as "objects" that have data fields (attributes that describe the object) and associated procedures known as methods. Objects, which are usually instances of classes, are used to interact with one another to design applications and computer programs.
If you came from CSC 108 and, or have little to no experience in other (OOP) languages your first introduction into programming probably would have been what is known as the procedure-oriented way of programming where we designed functions and blocks of statements to manipulate data.
Now, we are learning and starting to see that (OOP) will help us to simplify our code compared with a purely procedural approach. Furthermore, with custom classes we can help to guarantee that only valid operations are available in a given instance via their applicable methods helping to avoid mixing up data and functions such that the program's functionality our kept separated by their individual classes.