【发布时间】:2018-12-22 03:52:12
【问题描述】:
我有一本字典
stats = {'OK':0, 'SKIP':1, 'EXCEPTION':2, 'WARN':3, 'ERROR':4, 'FATAL':5}
我从另一个提供这样的字典的程序中获取值
my_values = {'Web': OK, 'Host': WARN, 'System': FATAL}
现在我想将 my_values 中的值与 stats 的键进行比较,并获得最高的结果。
例如:
如果 my_values = {'Web': OK, 'Host': WARN, 'System': FATAL} 函数应该返回 FATAL
如果 my_values = {'Web': OK, 'Host': WARN, 'System': ERROR} 函数应该返回 ERROR
如果 my_values = {'Web': OK, 'Host': WARN, 'System': WARN} 函数应该返回 WARN
到目前为止,我只给出了给定字典的最大值。
import operator
def high_value(my_value):
stats = {'OK':0, 'SKIP':1, 'EXCEPTION':2, 'WARN':3, 'ERROR':4, 'FATAL':5}
print max(stats.iteritems(), key=operator.itemgetter(1))[0]
high_value (my_values)
【问题讨论】:
-
为什么你在使用
iteritems时标记了这个python 3.x,它甚至在Python 3中都不存在? -
是否要返回值而不是打印?你有什么问题?
标签: python python-2.7 dictionary