Question: I am learning python through "*Learn Python The Hard Way*" by *Zed A Shaw*.

I am currently confused by this question

> 
> Make some new relationships that are lists and dictionaries so you can also have "has-many" relationships.
> 
> 
> 

Can anyone explain and give me some examples?

**EDIT**
This is the link
[Exercise 42](https://learnpythonthehardway.org/book/ex42.html)

Answer: 
A [*has-many*](https://loopback.io/doc/en/lb2/HasMany-relations.html) relationship *X* to *Y* usually means that every element in *X* is associated with many (zero or more) elements in *Y*. So you can construct a **dictionary that maps elements of *X* to a *list* of *Y***.

For instance if we want to know what a person (*X*) owns (*Y*):

```
{
 'Alice': ['laptop','house'],
 'Bob':['Gameboy'],
 'Chris':['pony'],
 'Plankton':[]
}

```

So here (1) Alice owns a laptop and a house. (2) Bob owns only a gameboy and (3) Chris owns a pony and (4) Plankton owns nothing at all.
Sure; I've taught programming including this material. You have each dictionary entry contain a *list* of values, instead of just the one one. For instance:

```
 Children = 
    {"Marianne": ["Eduardo", "Shibani", "Ted",
     "Stephan":  ["Marianne"],
     "Ted":      ["Winken", "Blinken", "Nod"]
    }

```

This is a simple list of parents, giving the children of each. In this case, you can also write code to see part of a family tree: Stephan is grandfather to Ted and two other children.