title: How can I get pymongo to always return str and not unicode?
body: <p>From the pymongo docs:</p>
  
  <blockquote>
    <p>MongoDB stores data in BSON format. BSON strings are UTF-8 encoded so PyMongo must ensure
    that any strings it stores contain only valid UTF-8 data. Regular strings () are > validated and stored unaltered. Unicode strings () are encoded UTF-8 first. > The reason our example string is represented in the Python shell as u’Mike’ instead of 
    ‘Mike’ is that PyMongo decodes each BSON string to a Python unicode string, not a regular 
    str."</p>
  </blockquote>
  
  <p>It seems a bit silly to me that the database can only store UTF-8 encoded strings, but the return type in pymongo is unicode, meaning the first thing I have to do with every string from the document is once again call encode('utf-8') on it.  Is there some way around this, i.e. telling pymongo not to give me unicode back but just give me the raw str?</p>