关于np.set_printoptions(),可阅读np.set_printoptions
set_printoptions(precision=None, threshold=None, edgeitems=None, linewidth=None, suppress=None, nanstr=None, infstr=None)
np.set_printoptions(precision=4) #控制输出的小数点个数是4
np.array([1.123456789])
[ 1.1235]
np.set_printoptions(threshold=5) #控制输出的值的个数为6,其余以...代替
np.arange(10)
[0 1 2 ..., 7 8 9]
np.set_printoptions(threshold=np.nan) #控制台输出所有的值,不需要省略号
np.arange(10)
[0 1 2 3 4 5 6 7 8 9]
eps = np.finfo(float).eps
x = np.arange(4.)
x**2 - (x + eps)**2
array([ -4.9304e-32, -4.4409e-16, 0.0000e+00, 0.0000e+00])
np.set_printoptions(suppress=True)
x**2 - (x + eps)**2
array([-0., -0., 0., 0.])
- precision:控制输出的小数点个数,默认是8
- threshold:控制输出的值的个数,其余以…代替;
当设置打印显示方式threshold=np.nan
,意思是输出数组的时候完全输出,不需要省略号将中间数据省略
- suppress: 当suppress=True,表示小数不需要以科学计数法的形式输出
在代码中,还有一个知识点,关于 np.finfo(float).eps,可阅读Python第三方库——Numpy,该语句的含义就是,float浮点数的最小正数的值
np.finfo(float).eps
Out[25]: 2.220446049250313e-16
#关于e,其实就是10次方的意思
2.220446049250313 * 10**(-16)
Out[26]: 2.220446049250313e-16