Exercises
This laboratory session asks you to write a few classes and experiment with some existing code. Of course, the problem with existing code is that it must be existing. To work with the set class in Exercise 5, either pull down the class source code off the Internet (see the Preface) or type it up by hand (it’s fairly small). These programs are starting to get more sophisticated, so be sure to check the solutions at the end of the book for pointers. If you’re pressed for time, we suspect that the last exercise dealing with composition will probably be the most fun of the bunch (of course, we already know the answers).
The basics. Write a class called
Adderthat exports a methodadd(self, x, y)that prints a “Not Implemented” message. Then define two subclasses ofAdderthat implement theaddmethod:ListAdder, with anaddmethod that returns the concatenation of its two list argumentsDictAdder, with anaddmethod that returns a new dictionary with the items in both its two dictionary arguments (any definition of addition will do)
Experiment by making instances of all three of your classes interactively and calling their
addmethods. Finally, extend your classes to save an object in a constructor (a list or a dictionary) and overload the + operator to replace theaddmethod. Where is the best place to put the constructors and operator overload methods (i.e., in which classes)? What sorts of objects can you add to your class instances?Operator overloading. Write a class called ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access