themselves what we' like is way to bind processing logic with the data stored in the database in order to make it easier to understanddebugand reuse another downside to using dictionaries for records is that they are difficult to expand over time for examplesuppose that the set of data fields or the procedure for giving raises is different for different kinds of people (perhaps some people get bonus each year and some do notif we ever need to extend our programthere is no natural way to customize simple dictionaries for future growthwe' also like our software to support extension and customization in natural way if you've already studied python in any sort of depthyou probably already know that this is where its oop support begins to become attractivestructure with oopwe can naturally associate processing logic with record data--classes provide both program unit that combines logic and data in single package and hierarchy that allows code to be easily factored to avoid redundancy encapsulation with oopwe can also wrap up details such as name processing and pay increases behind method functions-- we are free to change method implementations without breaking their users customization and with oopwe have natural growth path classes can be extended and customized by coding new subclasseswithout changing or breaking already working code that isunder oopwe program by customizing and reusingnot by rewriting oop is an option in python andfranklyis sometimes better suited for strategic than for tactical tasks it tends to work best when you have time for upfront planning--something that might be luxury if your users have already begun storming the gates but especially for larger systems that change over timeits code reuse and structuring advantages far outweigh its learning curveand it can substantially cut development time even in our simple casethe customizability and reduced redundancy we gain from classes can be decided advantage using classes oop is easy to use in pythonthanks largely to python' dynamic typing model in factit' so easy that we'll jump right into an exampleexample - implements our database records as class instances rather than as dictionaries example - pp \preview\person_start py class persondef __init__(selfnameagepay= job=none)step stepping up to oop