我有一个十进制类型的列表:
lat = [Decimal('28.633300'), Decimal('28.633300'), ..] # type lat[0] <class 'decimal.Decimal'>
我正在使用此函数将此列表转换为float:
def alchemyencoder(obj):
if isinstance(obj, decimal.Decimal):
return float(obj)
lati = []
for i in lat:
lati.append(alchemyencoder(i))
一切都很好,除非我转换为float时输出会删除零。
例如,lat [0]为28.633300,然后转换为float lati [0]后为28.6333。
为什么删除了零。有没有办法可以保留零
答案 0 :(得分:2)
您可以使用format
输出保留零的字符串,但是,您可能希望跟踪要输出的零数,因为它可以在不同的数字之间进行更改。
x = Decimal('28.633300')
x = float(x)
print("{:.6f}".format(x))
输出:
28.633300