将带有十进制数和数据类型的列表转换为数字

mon*_*top 0 python list decimal converter

我的数据库返回结果如下:

a = [Decimal('0.4441'), Decimal('0.3821'), Decimal('0.4414'), Decimal('0.3391')]
Run Code Online (Sandbox Code Playgroud)

我怎样才能将其转换为:

a = [0.4441, 0.3821,  0.4414, 0.3391]
Run Code Online (Sandbox Code Playgroud)

jam*_*lak 6

>>> from decimal import Decimal
>>> a = [Decimal('0.4441'), Decimal('0.3821'), Decimal('0.4414'), Decimal('0.3391')]
>>> a = [float(n) for n in a]
>>> a
[0.4441, 0.3821, 0.4414, 0.3391]
Run Code Online (Sandbox Code Playgroud)

我不明白你为什么要这样做,你只是失去了精确度.

  • 有关精确损失的有用说明+1. (2认同)
  • @mongotop这可能不是什么大问题,浮点数在你的计算中会更方便,但是你的数据库提供了一个'Decimal',因为如果你愿意,它可以更准确地使用它们. (2认同)
  • @mongotop搞定了什么!?我说'Decimal'更准确! (2认同)