Here, map applies a capacity/function on an iterable and returns another list where the function was applied on every item.
For your situation, it shows None on the grounds that f.addGoodFood work brings nothing back.
For testing purposes change addGoodFood along these lines:
def addGoodFood(self, food):
>>> map(f.addGoodFood, ['SPAM', 'Eggs', 'Bacon', 'Rat', 'Spring Surprise'])
['test', 'test', 'test', 'test', 'test']
Interested to learn python in detail? Come and Join the python course.