我想查找
并将csv文件中的所有科学记数法字符串转换
为十进制记数法,例如:
1.0e-05 to 0.00001
我如何在 ruby 中做到这一点?
最佳答案
只需使用字符串转换。必要的强制 float 将自动完成:
"%f" % "1.0e-05"
=> "0.000010"
# Which, behind the scenes is the same as:
"%f" % "1.0e-05".to_f
=> "0.000010"
根据需要进行调整以获得或多或少的准确性。例如:
"%.5f" % "1.0e-05"
=> "0.00001"
如果您想要真正的花哨并在末尾砍掉不必要的零,这是一种方法。 (希望有人会提出更优雅的建议;我想不出任何东西):
("%.20f" % "1.0e-05").sub(/\.?0*$/, "")
=> "0.00001"
关于ruby - 如何将科学计数法字符串转换为十进制计数法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8586357/