0

redis を使用してhgetall、すべての項目を dict として取得します。

ハッシュの最後の 5 つのアイテムを取得するにはどうすればよいですか? 可能であれば、辞書全体を処理したくありません。

dt = cxn.hgetall(k)

lt =[[key, dt[key]]for key in sorted(dt.iterkeys()) ] 

上記ではきれいな解決策が得られませんlt 。もう一度処理する必要があります。Python 2.7 の使用

編集:hgetall(k) return {'21': 'fooo', '2': 'bar' },キーが文字列であることに注意してください。

4

1 に答える 1

0
>>> dic={'1':100,'2':200,'3':300,'4':400,'5':500,'6':600,'7':700}

>>> print [[str(key), dic[str(key)]]for key in sorted(map(int,dic.iterkeys()))[-5:] ]
[['3', 300], ['4', 400], ['5', 500], ['6', 600], ['7', 700]]
于 2012-07-02T18:19:30.457 に答える