Python 困惑:dict.pop
我对Python的某些行为感到很困惑。
举个例子,我有一个叫“copy”的字典。(它是django中HttpRequest.POST的一个副本。)
下面是一个调试会话(我加了行号):
1 (Pdb) copy
2 <QueryDict: {u'text': [u'test'], u'otherId': [u'60002'], u'cmd': [u'cA'], u'id':
3 [u'15']}>
4 (Pdb) copy['text']
5 u'test'
6 (Pdb) copy.pop('text')
7 [u'test']
我的问题是,在这个字典里,值看起来都是列表(因为它们是从django那边来的)。当我像第4行那样访问一个元素时,我得到的是一个值,而不是列表,但当我用pop方法访问时,又得到了一个列表。
这让我很困惑。有人能帮忙解释一下吗?