2014-10-31 89 views
-4

我该如何迭代dictonary来获取密钥和值。如何迭代字典以获取Python中的键和值?

hey = {'a':67, 'b': 98} 

>>>a-67 
>>>b-98 

不应该使用内建的方法。这是我到目前为止所尝试的。

for i in hey: 
    print(i) 

>>>a 
>>>b 

这只是在密钥上随机迭代。

for i in hey: 
     hey[i] 

>>>67 
>>>98 

这给了我值。

我可以结合这两个吗?那看起来怎么样?

+2

为什么禁止内置的方法? – chepner 2014-10-31 13:00:28

回答

3

您可以打印两个项目具有相同的语句:

for i in hey: 
    print(i, hey[i]) 

如果你想在输出a-67,您还可以使用

for i in hey: 
    print(i, "-", hey[i], sep="") 
+0

我得到了'a-67'。你确定你的字典看起来像你发布的吗? – chepner 2014-10-31 13:08:16

3

你可以解压items,然后用format打印出他们的钥匙和价值,只要你愿意。

>>> for key,value in hey.items(): 
    print('{}-{}'.format(key,value)) 

a-67 
b-98 
+0

根据问题,'items'可能被视为“内置方法”,“不应该使用”。 – 2014-10-31 12:58:10

+0

@LevLevitsky一种方法将不得不在某些时候使用。甚至索引都会调用'__getitem__',这是一种内置方法。 – 2014-10-31 13:02:55

+0

@Alex不能与此争论,但它并不妨碍人们在家庭作业中强加任意和/或模棱两可的限制。 – 2014-10-31 13:07:41