我正在使用python,这是我的新手,可以对我认为是字符串格式问题的内容进行一些指导。
我有一个外部程序的输出,希望将其“转换”为浮点数。输出中包含两个数字,这些数字可能是科学计数法,也可能不是科学计数法,并且小数点后最多可以有15位数字(我在这里省略了)。
(-1.040e-05 + 3.1676e-03j)我希望它成为两个这样的独立数字-0.00001040,0.0031676
当前无用形式的输出数据的其他示例如下(0.0572636-0.419420j)将变为0.0572636,-0.419420(0.000194 + 4.85091e-05j)
我的目的是取每对方括号中包含的两个数字,将它们平方并加在一起。如果结果以科学计数法得出两个数字,那很好,只要我能够对它们执行数学运算即可。负号也不需要在转换中幸存下来,因为无论如何我都会将其消失。如果那样的话,事情就变得容易了。
我目前正在采用的方法是一个相当复杂且混乱的方法。使用x.find定位“ e”,“-”和“ +”,然后解释应提取字符串的哪些部分以形成数字。
我也不熟悉re模块,不确定如何使用它来提取正确的格式。
任何帮助将不胜感激
您还可以使用优质的numpy
包装:
import numpy as np
i = np.array(-1.040e-05+3.1676e-03j)
i.real
>> array(-1.04e-05)
i.imag
>> array(0.0031676)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句