如何防止我的数字四舍五入?

时间:2013-06-04 21:36:07

标签: python

我有一些代码从字典中获取值并尝试计算项目的每单位价格。但是,我无法弄清楚如何保持舍入值。

如果我这样做:

total_price = int(item['Item Price'][1:]) #First character is a dollar sign
qty = int(item['Quantity'])
unit_price = total_price/qty

我收到此错误:

ValueError: invalid literal for int() with base 10: '88.75'

所以,我尝试了float值:

total_price = int(float(item['Item Price'][1:]))
qty = int(item['Quantity'])
unit_price = total_price/qty

哪个不会返回错误,但它会向上舍入,我只得到整数。

如何获得实际的每件价格而不是舍入值?感谢

2 个答案:

答案 0 :(得分:0)

将您的qtytotal_price更改为浮动:

total_price = float(item['Item Price'][1:])
qty = float(item['Quantity'])

这将导致除法在两个浮点值之间。

明确地使用int表示你想要整数,它给你整数。

答案 1 :(得分:0)

分割期间发生错误

>>> print 3/2
1
>>> print 3.0/2
1.5
>>>