Python: округлить до следующего предопределенного целого числа в списке

У меня есть список предопределенных целых чисел Python:

intvals = [5000, 7500, 10000, 20000, 30000, 40000, 50000]

Мне нужно округлить до следующего меньшего/большего значения в списке. Так, например, учитывая число 8000, результат должен быть [7500, 10000]. Для 42000должно быть [40000, 50000]. Мне интересно, есть ли простой способ сделать это.

Моя идея состояла бы в том, чтобы создать функцию с двумя циклами: один из них уменьшает значение на -1, пока не найдет его в списке, а другой увеличивает значение на 1, пока не найдет большее совпадение. Это сработает, но может есть решение получше?

5
задан Daniel 26 March 2012 в 08:48
поделиться