私はキーの下限をフェッチする必要があるコードを書いています(簡単にするために、コレクションの最小のキーの下にあるキーを無視してください)。map :: lower_bound()はPythonのdictクラスに相当しますか?
C++では、std :: map(最も類似したデータ型として)を使用して、単純にlower_bound()を使用してイテレータを返します。
は何私のPythonfooは、その素晴らしいではありませんが、私は(場合には、Pythonはすでにこれを行う方法を持っていない)、これはラムダ関数をうまく利用することであろうと推測しています...
指定されたインデックスの下限キーを取得するPythonの方法?
質問があまりにも抽象的である場合には、これは私が実際にやろうとしていますものです:
私は日付によってインデックスさPythonの辞書を持っています。私は日付を使用して辞書を検索し、指定されたキーの下限に関連付けられた値を返すことができるようにします。
スニペットは、次のとおりです。
はmymap = { datetime.date(2007, 1, 5): 'foo',
datetime.date(2007, 1, 10): 'foofoo',
datetime.date(2007, 2, 2): 'foobar',
datetime.date(2007, 2, 7): 'foobarbar' }
mydate = datetime.date(2007, 1, 7)
# fetch lbound key for mydate from mymap
def mymap_lbound_key(orig):
pass # return the lbound for the key
は、私は本当に何より良い代替手段がない場合を除き、キーを提供=最初のキー<を探して、キーをループにしたくない...それでも