generated from mwc/lab_weather
	Wrote codes to implement each function.
One place I got stuck was when I was trying to write get_color_dict because I was not sure how to loop through each person and their favorite colors to count them. I got unstuck by going through my notes from CSE 115.
This commit is contained in:
		@@ -17,7 +17,7 @@ def count_people(people):
 | 
			
		||||
        >>> count_people(friends)
 | 
			
		||||
        10
 | 
			
		||||
    """
 | 
			
		||||
    raise NotImplementedError()
 | 
			
		||||
    return len(people)
 | 
			
		||||
 | 
			
		||||
def get_email(people, name):
 | 
			
		||||
    """Returns the named person's email address. If there is no such person, returns None.
 | 
			
		||||
@@ -27,7 +27,10 @@ def get_email(people, name):
 | 
			
		||||
        >>> get_email(friends, "Tad Winters")
 | 
			
		||||
        None
 | 
			
		||||
    """
 | 
			
		||||
    raise NotImplementedError()
 | 
			
		||||
    for p in people:
 | 
			
		||||
        if p["name"] == name:
 | 
			
		||||
            return p["email"]
 | 
			
		||||
    return None
 | 
			
		||||
 | 
			
		||||
def count_favorite_colors(people, name):
 | 
			
		||||
    """Returns the number of colors liked by the named person. If there is no such person, returns None.
 | 
			
		||||
@@ -37,7 +40,10 @@ def count_favorite_colors(people, name):
 | 
			
		||||
        >>> count_favorite_colors(family, "Raphael Chambers")
 | 
			
		||||
        1
 | 
			
		||||
    """
 | 
			
		||||
    raise NotImplementedError()
 | 
			
		||||
    for p in people:
 | 
			
		||||
        if p["name"] == name:
 | 
			
		||||
            return len(p["favorite_colors"])
 | 
			
		||||
    return None
 | 
			
		||||
 | 
			
		||||
def people_who_like_color(people, color):
 | 
			
		||||
    """Returns a list containing only those people who like the given color.
 | 
			
		||||
@@ -57,7 +63,11 @@ def people_who_like_color(people, color):
 | 
			
		||||
        >>> people_who_like_color(family, "indigo")
 | 
			
		||||
        []
 | 
			
		||||
    """
 | 
			
		||||
    raise NotImplementedError()
 | 
			
		||||
    result = []
 | 
			
		||||
    for p in people:
 | 
			
		||||
        if color in p["favorite_colors"]:
 | 
			
		||||
            result.append(p)
 | 
			
		||||
    return result
 | 
			
		||||
 | 
			
		||||
def count_people_who_like_color(people, color):
 | 
			
		||||
    """Returns the number of people who like a given color. 
 | 
			
		||||
@@ -67,7 +77,11 @@ def count_people_who_like_color(people, color):
 | 
			
		||||
        >>> count_people_who_like_color(family, "orange")
 | 
			
		||||
        1
 | 
			
		||||
    """
 | 
			
		||||
    raise NotImplementedError()
 | 
			
		||||
    count = 0
 | 
			
		||||
    for p in people:
 | 
			
		||||
        if color in p["favorite_colors"]:
 | 
			
		||||
            count= count + 1
 | 
			
		||||
    return count
 | 
			
		||||
 | 
			
		||||
def get_color_dict(people):
 | 
			
		||||
    """Returns a dict showing how many people like each color. 
 | 
			
		||||
@@ -86,7 +100,15 @@ def get_color_dict(people):
 | 
			
		||||
            "orange": 1,
 | 
			
		||||
        }
 | 
			
		||||
    """
 | 
			
		||||
    raise NotImplementedError()
 | 
			
		||||
    color_counts = {}
 | 
			
		||||
 | 
			
		||||
    for p in people:
 | 
			
		||||
        for color in p["favorite_colors"]:
 | 
			
		||||
            if color in color_counts:
 | 
			
		||||
                color_counts[color]=color_counts[color] + 1
 | 
			
		||||
        else:
 | 
			
		||||
            color_counts[color] = 1 
 | 
			
		||||
    return color_counts
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user