python; checkio日記

checkioを中心にpythonプログラミングの記録

Elementary問題 辞書中で最大valueを持つkey

辞書中の最大の値を持つkeyを求める関数

def best_stock(data):
    return ''.join([i for (i, j) in data.items() if j==max(data.values())])

としたが、全くいけてない。
一番エレガントなのは

best_stock = lambda data: max(data, key=data.get)

このdata.getの使いについてはあんまり理解しがたいが、覚えておこう。
ただし、maxは一つしか値を返さないので、もし最大値が2つある場合には不適。