2014-10-31 122 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