numpy.format_float_positional#
- numpy.format_float_positional(x, precision=None, unique=True, fractional=True, trim='k', sign=False, pad_left=None, pad_right=None, min_digits=None)[source]#
将浮点标量格式化为位置表示法的十进制字符串。
提供对舍入、修整和填充的控制。使用并假设 IEEE 无偏舍入。使用“Dragon4”算法。
- 参数:
- xpython 浮点数或 numpy 浮点标量
要格式化的值。
- precision非负整数或 None,可选
要打印的最大位数。如果
unique
为 True,则可以为 None,但如果 unique 为 False,则必须为整数。- unique布尔值,可选
如果为 True,则使用一种数字生成策略,该策略通过谨慎的舍入给出最短的表示形式,该表示形式通过相同的类型唯一地标识浮点数与其他值。如果给出 precision 少于必要的位数,或者如果给出 min_digits 多于必要的位数,则可以使用更少的位数或更多的位数进行打印,在这种情况下,最后一位将使用无偏舍入进行舍入。如果为 False,则数字的生成方式如同打印无限精度值并在 precision 位数后停止,使用无偏舍入对剩余值进行舍入。
- fractional布尔值,可选
如果为 True,则 precision 和 min_digits 的截止值指的是小数点后的总位数,包括前导零。如果为 False,则 precision 和 min_digits 指的是有效数字的总数,小数点之前或之后,忽略前导零。
- trim‘k’、‘.’、‘0’、‘-’ 之一,可选
控制尾随数字的后处理修整,如下所示:
‘k’:保留尾随零,保留小数点(不修整)
‘.’:修整所有尾随零,保留小数点
‘0’:修整除小数点之前的零以外的所有数字。如果缺少零,则插入零。
‘-’:修整尾随零和任何尾随小数点
- sign布尔值,可选
是否显示正值的符号。
- pad_left非负整数,可选
用空格填充字符串的左侧,直到小数点左侧至少有那么多字符。
- pad_right非负整数,可选
用空格填充字符串的右侧,直到小数点右侧至少有那么多字符。
- min_digits非负整数或 None,可选
要打印的最小位数。只有在 unique=True 的情况下才有效,在这种情况下,可能会打印超过唯一标识该值所需的额外位数,并对最后一位额外数字进行舍入。
1.21.0 版中的新功能。
- 返回值:
- rep字符串
浮点值的字符串表示形式
示例
>>> import numpy as np >>> np.format_float_positional(np.float32(np.pi)) '3.1415927' >>> np.format_float_positional(np.float16(np.pi)) '3.14' >>> np.format_float_positional(np.float16(0.3)) '0.3' >>> np.format_float_positional(np.float16(0.3), unique=False, precision=10) '0.3000488281'