title: What is the difference between a QueryDict and MultiValueDict?
body: <p>I was looking to convert a dict to a QueryDict in my django project. Couple of links exists to explain this (<a href="https://stackoverflow.com/questions/13363628/django-can-i-create-a-querydict-from-a-dictionary">Django: Can I create a QueryDict from a dictionary?</a> and <a href="https://stackoverflow.com/questions/13349573/how-to-change-a-django-querydict-to-python-dict">How to change a django QueryDict to Python Dict?</a>). This is my simple dictionary which I want to convert <code>abc = {'a': 1, 'b':[1,2,3]}</code>. I have tried this approach:</p>
  
  <pre><code>from django.http import QueryDict
  from django.utils.datastructures import MultiValueDict
  abc = { 'a': 1, 'b':[1,2,3]}
  mdict = MultiValueDict(abc)
  qdict = QueryDict(mdict)
  </code></pre>
  
  <p>This is the error trace I am getting</p>
  
  <pre><code>/usr/lib/python2.7/urlparse.pyc in parse_qsl(qs, keep_blank_values, strict_parsing)
  407     Returns a list, as G-d intended.
  408     """
  409     pairs = [s2 for s1 in qs.split('&amp;') for s2 in s1.split(';')]
  410     r = []
  411     for name_value in pairs:
  AttributeError: 'MultiValueDict' object has no attribute 'split'
  </code></pre>
  
  <p>Why this has failed and how can I get this done?
  Also what are the differences between MultiValueDict and QueryDict?</p>