2014-09-01 108 views
3

Here是獲取Python3中OrderedDict的最後一個密鑰的方法。在Python3中獲取OrderedDict的最後一個值

我需要在Python3中獲取OrderedDict的最後一個值,而不需要轉換爲list

Python 3.4.0 (default, Apr 11 2014, 13:05:11) 

>>> from collections import OrderedDict 
>>> dd = OrderedDict(a=1, b=2) 
>>> next(reversed(dd)) 
'b' 

>>> next(reversed(dd.keys())) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: argument to reversed() must be a sequence 

>>> next(reversed(dd.items())) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: argument to reversed() must be a sequence 

>>> next(reversed(dd.values())) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: argument to reversed() must be a sequence 
+1

哎呀,看起來像我忽略了一個顯而易見的解決方案:'DD [下一個(逆轉(DD ))]' – warvariuc 2014-09-01 07:58:09

回答

3

只需使用該密鑰索引字典:

dd[next(reversed(dd))] 

例如:

from collections import OrderedDict 
dd = OrderedDict(a=1, b=2) 
print(dd[next(reversed(dd))])  # 2