示例代码:
import numpy as np
#precision:
x=np.array([3.1415926])
print(x)
np.set_printoptions(precision=4)
print(x)
#threshold:
x=np.arange(0,12,1)
print(x)
np.set_printoptions(threshold=7)
print(x)
#edgeitems:
x=np.arange(0,12,1)
print(x)
np.set_printoptions(threshold=7)
print(x)
np.set_printoptions(threshold=5, edgeitems=4)
print(x)
np.set_printoptions(threshold=5, edgeitems=3)
print(x)
#linewidth:
x=np.arange(0,12,1)
print(x)
np.set_printoptions(linewidth=7)
print(x)
np.set_printoptions(threshold=11)
print(x)
#suppress:
x=np.array([1.7e-9, 7.3, 17333])
print(x)
np.set_printoptions(suppress=True)
print(x)
#formatter:
x=np.random.random(10)-0.5#生成元素在 -0.5~0.5 之间的10个元素的数组
print(x)
#[ 0.13466001 -0.31490446 0.47113123 0.23657203 -0.20984852 0.09325732 0.37024481 -0.46948463 0.21283395 -0.40755917]
np.set_printoptions(formatter={'all':lambda x:'+' if x>=0.0 else '-'})
print(x)
#[+ - + + - + + - + -]
运行结果:
大概说明:
np.set_printoptions(threshold=np.nan)
print(ndarray)
为了随心所欲地打印 ndarray 的数据,可以使用numpy的set_printoptions()方法;
set_printoptions(precision=None,
threshold=None,
edgeitems=None,
linewidth=None,
suppress=None,
nanstr=None,
infstr=None,
formatter=None)
precision:输出float型时,小数点后保留的位数
threshold: array元素的个数在大于threshold 时会被折叠
edgeitems:在array被折叠时,开头和结尾显示的元素个数皆为 edgeitems个
linewidth: 每行打印多少个字符,超出字符数后将换行显示
suppress: 是否抑制隐藏显示,否则默认为科学记数法等正常显示
formatter: 用于对print的输出进行格式化,作用类似 python3中的str.format()
formatter是一个可以被调用的字典类型,关键字'all'是规定x可以包含所有type;