7. group_friends_by_food For this problem, you are given a mostly-working version of the Friend and FriendsDB classes from hw6 and hw7, and we will add new method to FriendsDB -- group_friends_by_food. group_friends_by_food returns a dictionary mapping from each of the favorite foods enjoyed by any friend to a list of the friends who enjoy that food, sorted in alphabetical order. (You can use the friends_who_love method to generate these lists.) A sample run should look like this: >>> friend1 = Friend("sarah", 165) >>> friend1.add_favorite_food("strawberries") >>> friend2 = Friend("dweezil", 175) >>> friend2.add_favorite_food("pizza") >>> friend3 = Friend("bimmy", 60) >>> friend3.add_favorite_food("pizza") >>> friend3.add_favorite_food("strawberries") >>> db = FriendsDB() >>> db.add_friend(friend1) >>> db.add_friend(friend2) >>> db.add_friend(friend3) >>> db.group_friends_by_food() {'strawberries': ['bimmy', 'sarah'], 'pizza': ['bimmy', 'dweezil']}

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
### QUESTION SEVEN ###
class Friend:
def
init
(self, name, height):
self.name =
name
self.height
self.favorite_foods = set ()
height
def add favorite_food (self, food):
self.favorite_foods.add(food)
def number of favorite_foods (self):
return len (self.favorite_foods)
def
(self):
str
foodlist = sorted(self.favorite_foods)
", ".join(foodlist)
[FRIEND name: {}, height: {}, favorite foods: {}]"\
.format(self.name, self.height, foodstr)
foodstr =
%3D
return
class FriendsDB:
init__(self):
[ ]
def
self.friends
def add_friend(self, friend):
self.friends.append (friend)
def friends_who_love (self, food):
out = sorted ([friend.name for friend in self.friends
if food in friend.favorite_foods])
return out
def group_friends_by_food(self):
## YOUR CODE GOES HERE.
pass
Transcribed Image Text:### QUESTION SEVEN ### class Friend: def init (self, name, height): self.name = name self.height self.favorite_foods = set () height def add favorite_food (self, food): self.favorite_foods.add(food) def number of favorite_foods (self): return len (self.favorite_foods) def (self): str foodlist = sorted(self.favorite_foods) ", ".join(foodlist) [FRIEND name: {}, height: {}, favorite foods: {}]"\ .format(self.name, self.height, foodstr) foodstr = %3D return class FriendsDB: init__(self): [ ] def self.friends def add_friend(self, friend): self.friends.append (friend) def friends_who_love (self, food): out = sorted ([friend.name for friend in self.friends if food in friend.favorite_foods]) return out def group_friends_by_food(self): ## YOUR CODE GOES HERE. pass
7. group_friends_by_food
For this problem, you are given a mostly-working version of the Friend and FriendsDB classes from hwó and hw7, and
we will add new method to FriendsDB -- group_friends_by_food. group_friends_by_food returns a dictionary mapping
from each of the favorite foods enjoyed by any friend to a list of the friends who enjoy that food, sorted in alphabetical
order. (You can use the friends_who_love method to generate these lists.)
A sample run should look like this:
>>> friend1
Friend("sarah", 165)
>>> friend1.add_favorite_food("strawberries")
>>> friend2 =
Friend("dweezil", 175)
>>> friend2.add_favorite_food("pizza")
>>> friend3
Friend("bimmy", 60)
>> friend3.add_favorite_food("pizza")
>>> friend3.add_favorite_food("strawberries")
>>> db =
FriendsDB()
>> db.add_friend(friend1)
>> db.add_friend(friend2)
> db.add_friend(friend3)
>> db.group_friends_by_food()
{'strawberries': ['bimmy', 'sarah'], 'pizza': ['bimmy', 'dweezil']}
Transcribed Image Text:7. group_friends_by_food For this problem, you are given a mostly-working version of the Friend and FriendsDB classes from hwó and hw7, and we will add new method to FriendsDB -- group_friends_by_food. group_friends_by_food returns a dictionary mapping from each of the favorite foods enjoyed by any friend to a list of the friends who enjoy that food, sorted in alphabetical order. (You can use the friends_who_love method to generate these lists.) A sample run should look like this: >>> friend1 Friend("sarah", 165) >>> friend1.add_favorite_food("strawberries") >>> friend2 = Friend("dweezil", 175) >>> friend2.add_favorite_food("pizza") >>> friend3 Friend("bimmy", 60) >> friend3.add_favorite_food("pizza") >>> friend3.add_favorite_food("strawberries") >>> db = FriendsDB() >> db.add_friend(friend1) >> db.add_friend(friend2) > db.add_friend(friend3) >> db.group_friends_by_food() {'strawberries': ['bimmy', 'sarah'], 'pizza': ['bimmy', 'dweezil']}
Expert Solution
steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Map
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education