Estoy escribiendo un código que me obliga a buscar el límite inferior de una clave (por simplicidad, ignore las claves que se encuentran debajo de la clave más pequeña en la colección).map :: lower_bound() equivalente para la clase dict de python?
En C++, usando std :: map (como el tipo de datos más comparable), simplemente usaría low_bound() para devolver el iterador.
Mi Pythonfoo no es tan grande, pero estoy adivinando que (en el caso de Python no tiene ya una forma de hacer esto), esto sería un buen uso de una función lambda ...
¿Cuál es la forma Pythonic de recuperar la clave de límite inferior para un índice dado?
En caso de que la pregunta es demasiado abstracto, esto es lo que en realidad estoy tratando de hacer:
que tienen un diccionario de Python indexado por día. Quiero poder utilizar una fecha para buscar el dict y devolver el valor asociado con el límite inferior de la clave especificada.
Fragmento de la siguiente manera:
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
que realmente no quieren colocar a través de las teclas, en busca de la primera clave < = proporcionada clave, a menos que no hay mejor alternativa ...