title: Please explain this program?
body: <p>I found this program when i was going through a book and I can't understand it. Can anyone explain this in simple terms</p>
  
  <pre><code>girls = ['alice', 'bernice', 'clarice']
  boys = ['chris', 'arnold', 'bob']
  letterGirls = {}
  for girl in girls:
      letterGirls.setdefault(girl[0], []).append(girl)
      print [b+'+'+g for b in boys for g in letterGirls[b[0]]]
  </code></pre>