Python有条件地舍入数字

今天我有一个问题,关于使用 Python中的条件来舍入数字.

我正在做一个销售网站,我的客户希望根据结果将价格从美元兑换成哥伦比亚比索来收集价格.例如:200美元到cop导致353990 cop,它应该四舍五入到359000.

他已经在Excel中实现了一个功能

=IF(F4>=10000000,(ROUNDUP(F4,-6)-100000),IF(F4>=1000000,-5)-10000),IF(F4>=100000,-4)-1000),IF(F4>=10000,-3)-1000),IF(F4>=0,-3)))))))

我需要做同样的事情,但在Python中,我不知道如何做到这一点.

谢谢你的帮助!

解决方法

def round_up(value,multiple):
    return multiple * math.ceil(float(value) / multiple)

def digits(value):
    return int(math.log(value,10)) + 1

def round_price(value):
    if value < 10000:
        return int(round_up(value,1000))
    d = digits(value)
    new_value = int(round_up(value,10 ** (d - 2)))
    new_value -= 10 ** (d - 3)
    return new_value

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...