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
Adder
that exports a methodadd(self, x, y)
that prints a “Not Implemented” message. Then define two subclasses ofAdder
that implement theadd
method:ListAdder
, with anadd
method that returns the concatenation of its two list argumentsDictAdder
, with anadd
method 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
add
methods. Finally, extend your classes to save an object in a constructor (a list or a dictionary) and overload the + operator to replace theadd
method. 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 ...
Get Learning Python now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.