2014-11-21 63 views
-3

迭代这是更澄清:通过字典元组

如果我说:

for key, value in dictionary.iteritems(): 

这实际上给我钥匙和价值观,而不仅仅是每个按键被分配到两个“关键”和“价值”

这只是一直困扰我关于Python的东西?

+1

这甚至一个问题吗?以问号结尾的句子不是我们可以回答的问题。 – 2014-11-21 18:42:38

+0

'.iteritems()'返回一个元组,通过说出键值,你将它解压缩为这两个值 – user2097159 2014-11-21 18:42:48

回答

6

出于示例的目的下面的两个是等效的:

实施例1

for item in dictionary: 
    print(item, dictionary[item]) 

实施例2

for k, v in dictionary.items(): 
    print(k, v) 

然而,实施例1中不具有对value直接访问只有项目本身,而在示例2中,您可以以v的形式访问它。

终端

>>> dictionary = {'a': 1, 'b': 2, 'c': 3} 
>>> for item in dictionary: 
... print(item, dictionary[item]) 
... 
b 2 
c 3 
a 1 
>>> for k, v in dictionary.items(): 
... print(k, v) 
... 
b 2 
c 3 
a 1 

当然k, v和是任意的kv可以是任何东西,例如:

>>> for abc, xyz in dictionary.items(): 
... print(abc, xyz) 
... 
b 2 
c 3 
a 1