python decimal 转换为float_在Python中将float转换为decimal类型

我只是在玩数字游戏。

我发现Numpy提供了一个名为np.vectorize的函数,允许您获取一个函数并将其应用于Numpy数组。

在[23]中:import numpy as np

import decimal

D = decimal.Decimal

我们将创建一个常规的np浮点数组

在[24]中:f10 = np.random.ranf(10)

f10

出[24]:array([ 0.45410583, 0.35353919, 0.5976785 , 0.12030978, 0.00976334,

0.47035594, 0.76010096, 0.09229687, 0.24842551, 0.30564141])

尝试使用np.asarray将数组转换为十进制类型不起作用。似乎尝试使用np.asarray并指定decimal.decimal类型会将数组设置为预期的object,但如果实际访问数组的单个元素,则它仍然具有float数据类型。

在[25]中:f10todec = np.asarray(f10, dtype = decimal.Decimal)

print f10todec.dtype, f10todec

print type(f10todec[0])

object [0.454105831376884 0.3535391906233327 0.5976785016396975 0.1203097778312584

0.009763339031407026 0.47035593879363524 0.7601009625324361

0.09229687387940333 0.24842550566826282 0.30564141425653435]

你可能感兴趣的:(python,decimal,转换为float)