title: The best suggestion for a structure to store multiple keys and values - dictionaries?
body: <p>The intention is to create the beginnings of a facebook type program (For teaching purposes) that stores a list of names of individuals along with their bio details. </p>
  
  <p>I have two questions, one follows on from the next:</p>
  
  <p><strong>Question 1</strong>: How to get at the <strong>list values</strong> that are part of a value in a key value pair in a dictionary. For instance, to find out what friends John and Mary have in common, in this case <strong>friend1 and friend3</strong></p>
  
  <p><strong>Question 2:</strong> The best method to create a structure that stores names,gender,hobbies,and friends? Would this be a dictionary and if so, how could this be defined? If not, what do people suggest?</p>
  
  <pre><code>#create a dictionary that stores names, and a list of friends
  facebook_profile={"John":["friend1","friend2","friend3","friend4"],"Mary":["friend1","friend7","friend3","friend9"]}
  print(facebook_profile)
  </code></pre>
  
  <p><strong>Required to store and subsequently print the following sample data:</strong></p>
  
  <pre><code>Name:John
  Gender: Male
  Hobbies: Chess
  Friends: friend1,friend2,friend3,friend4
  
  Name: Mary
  Gender: Female
  Hobbies: Chequers
  Friends: friend1,friend2,friend3,friend4    
  </code></pre>
  
  <p>I am aware the best solution would be a database and to use some sort of file handling to achieve it however, for teaching purposes we are trying to use only lists or dictionaries. These dictionaries/lists could then be written to a file, but the solution(s)/answers I am looking for must ideally be utilising only the list and dictionary structures.</p>