如何把一个字符串转成数字,float会好多小数点

如何把一个字符串转成数字,float会好多小数点

>>> a='33.30'
>>> float(a)
33.299999999999997

我想要的是转成数字33.30,help!
用decimal模块

[Copy to clipboard] [ - ]
CODE:
import decimal
a=decimal.Decimal('33.30')

好象有点不一样. 不影响使用哦.

QUOTE:
D:\>python
ActivePython 2.5.1.1 (ActiveState Software Inc.) based on
Python 2.5.1 (r251:54863, May  1 2007, 17:47:05) [MSC v.1310 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> a  = '33.30'
>>> print float(a)
33.3
>>> float(a)
33.299999999999997
>>> b = float(a)
>>> b
33.299999999999997
>>> print b
33.3
>>> c = b * 10000
>>> print c
333000.0
>>> c
333000.0

这样不知道 是否可以
float(a)+0.00001


QUOTE:
原帖由 yarco4 于 2007-7-31 12:37 发表
好象有点不一样. 不影响使用哦.

我主要是想用转换成的数字赋予值给一个变量

例如:
a='33.33'
b=33.33(通过赋值)