我正在使用redis.py並想知道如何按給定字段排序。我已經閱讀了文檔並嘗試了谷歌搜索的例子,但沒有發現任何有趣的事情。redis.py - 按特定字段排序哈希
在這種情況下,我有一個時間列表和相應的溫度。對於給定範圍的'時間',比如說1000到1100,我會返回給定時間範圍內的最高值'temp',並將其分配給變量hightemp。同樣,我也想用lowtemp來做。
是否有可能Redis的範圍內做到這一點,而不是再翻譯一切恢復到內存中,如果我整理使用python
import redis
red = redis.Redis()
red.hmset('temperature', {'time':900, 'temp':123})
red.hmset('temperature', {'time':930, 'temp':123})
red.hmset('temperature', {'time':1000, 'time':121})
red.hmset('temperature', {'time':1030, 'time':125})
red.hmset('temperature', {'time':1100, 'time':126})
red.hmset('temperature', {'time':1130, 'time':127})
red.hmset('temperature', {'time':1200, 'time':128})
要計算最小和最大溫度,不需要適當的排序。 Python中的溫度列表中的簡單O(n)掃描更好一些:maxt,mint = max(溫度),min(溫度) –
感謝@DidierSpezia,已更新! –
謝謝!我原本使用這種方法,但我同意,似乎凌亂。但是,我並不認爲有更好的解決方法。只要我重新分配和覆蓋'結果'和'溫度'的變量,我應該可以確定我想要的資源。這可能會導致在不同地區的溫度大規模操作。 – snakesNbronies