Excel-подобная функция потолка в Python? - PullRequest
8 голосов
/ 06 октября 2011

Я знаю о math.ceil и numpy.ceil , но у них обоих отсутствует параметр significance. Например в Excel:

=Ceiling(210.63, 0.05) -> 210.65

numpy.ceil и math.ceil в другой руке:

numpy.ceil(210.63) -> 211.0

math.ceil(210.63) -> 211.0

Итак, мне интересно, есть ли уже какое-то подобное решение Excel?

Ответы [ 2 ]

10 голосов
/ 06 октября 2011

Я не знаю ни одной функции python для этого, но вы легко можете написать одну из них:

import math

def ceil(x, s):
    return s * math.ceil(float(x)/s)

Преобразование в float необходимо в Python 2, чтобы избежать целочисленного деления, если оба аргумента являются целыми числами. Вы также можете использовать from __future__ import division. Это не требуется для Python 3.

0 голосов
/ 06 октября 2011

То, что вы можете сделать, это.

ceil = lambda x,y: math.ceil(x*(1.0/y))/(1.0/y)

Но это не надежно.

...