numpy.format_float_scientific#
- numpy.format_float_scientific(x, precision=None, unique=True, trim='k', sign=False, pad_left=None, exp_digits=None, min_digits=None)[源代码]#
将浮点数标量格式化为科学记数法的十进制字符串。
提供对舍入、修剪和填充的控制。使用并假定 IEEE 无偏舍入。使用“Dragon4”算法。
- 参数:
- xpython float 或 numpy 浮点标量
要格式化的值。
- precision非负整数或 None,可选
要打印的最大位数。如果
unique为 True,则可以为 None,但如果 unique 为 False,则必须为整数。- unique布尔值,可选
如果为 True,则使用一种数字生成策略,通过巧妙的舍入,给出最短的表示形式,该表示形式可以唯一地将浮点数与其他相同类型的值区分开。如果给定了 precision,则可以打印的位数少于必需的位数。如果给定了 min_digits,则可以打印更多位数,在这种情况下,最后一位数字将使用无偏舍入进行舍入。如果为 False,则数字的生成方式如同打印一个无限精度的值,并在 precision 位后停止,使用无偏舍入对剩余的值进行舍入。
- trim‘k’、‘.’、‘0’、‘-’之一,可选
控制尾随数字的后处理修剪,如下所示:
‘k’:保留尾随零,保留小数点(不修剪)
‘.’:修剪所有尾随零,保留小数点
‘0’:修剪小数点前的零,保留其他数字。如果缺少小数点前的零,则插入它。
‘-’:修剪尾随零和任何尾随小数点
- sign布尔值,可选
是否显示正数的符号。
- pad_left非负整数,可选
在字符串的左侧填充空格,直到小数点左侧至少有这么多字符。
- exp_digits非负整数,可选
用零填充指数,直到它包含至少这么多位数。如果省略,指数至少为 2 位数。
- min_digits非负整数或 None,可选
要打印的最小位数。这仅对 unique=True 有效。在这种情况下,可以打印超过唯一标识该值所需的位数,并进行无偏舍入。
版本 1.21.0 中新增。
- 返回:
- rep字符串
浮点值的字符串表示形式
示例
>>> import numpy as np >>> np.format_float_scientific(np.float32(np.pi)) '3.1415927e+00' >>> s = np.float32(1.23e24) >>> np.format_float_scientific(s, unique=False, precision=15) '1.230000071797338e+24' >>> np.format_float_scientific(s, exp_digits=4) '1.23e+0024'