Why list as key dictionary, will still show itself as tuple as key dictionary
<p>When I define a dictionary which use list as key</p>

<pre><code>collections.defaultdict(list)
</code></pre>

<p>When I print it out, it shows itself is using tuple as key.</p>

<p>May I know why?</p>

<pre><code>import collections

tuple_as_dict_key = collections.defaultdict(tuple)
tuple_as_dict_key['abc', 1, 2] = 999
tuple_as_dict_key['abc', 3, 4] = 999
tuple_as_dict_key['abc', 5, 6] = 888
# defaultdict(&lt;type 'tuple'&gt;, {('abc', 5, 6): 888, ('abc', 1, 2): 999, ('abc', 3, 4): 999})
print tuple_as_dict_key

list_as_dict_key = collections.defaultdict(list)
list_as_dict_key['abc', 1, 2] = 999
list_as_dict_key['abc', 3, 4] = 999
list_as_dict_key['abc', 5, 6] = 888
# defaultdict(&lt;type 'list'&gt;, {('abc', 5, 6): 888, ('abc', 1, 2): 999, ('abc', 3, 4): 999})
# Isn't it should be defaultdict(&lt;type 'list'&gt;, {['abc', 5, 6]: 888, ...
print list_as_dict_key
</code></pre>
