我在csv文件中有科学记数法的一些值,并且我试图使用Python 3脚本(继承自某些脚本)将它们转换为float / decimal值。为此,我使用float(字符串)但它无法转换某些值。
以下是一个例子:
U:\>py
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:38:48) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> float('1.72e-05')
1.72e-05
>>>
不知何故,它不能用于某些值,如上所述。
那些科学记数值来自不同的系统,我不知道它们是如何被创造出来的。
感谢您的帮助。
答案 0 :(得分:2)
使用内置函数format
将科学记数法显示为小数。
>>> format(float('1.72e-05'), 'f')
'0.000017'
>>> format(float('1.72e-05'), '.7f')
'0.0000172'
答案 1 :(得分:1)
如果要将其转换为字符串,请执行此操作。
value = float('1.72e-05')
string_value = "%f" % value