Skip to main content
 首页 » 编程设计

python之如何写入带有小数点后固定数字的 astropy Table 对象值

2025年05月04日17Free-Thinker

如何保持将值写入 astropy Table 对象的格式,以及何时将表写入文件?

我正在对从具有以下形式值的 txt 文件中获取的数据执行计算:

3.160792680383711552e-04    9.180738349762776473e-02    7.997959651731425081e-05    9.978300086189421103e-01 

然后我读取这些值,添加另一列,这是我根据每一行的值计算的,我想将它们写回一个文件,所以我写的文件将与旧文件具有相同的列另一列是我计算的值。但是,当我尝试这样做时,它会将写入这些值的格式更改为:

0.000316079268038   0.0918073834976   7.99795965173e-05   0.997830008619  

请您参考如下方法:

设置列格式说明符:

http://astropy.readthedocs.org/en/v0.3/table/construct_table.html#format-specifier

>>> from astropy.table import Table 
>>> t = Table([[1.0]], names=['a']) 
>>> t['a'].format = '%.16e' 
>>> t.write(sys.stdout, format='ascii') 
a 
1.0000000000000000e+00