numpy.array2string

numpy.array2string(a, max_line_width=None, precision=None, suppress_small=None, separator=' ', prefix='', style=<no value>, formatter=None, threshold=None, edgeitems=None, sign=None, floatmode=None, suffix='', *, legacy=None)[源代码]

返回数组的字符串表示形式。

参数
a恩达雷

输入数组。

max_line_width可选的

如果文本长度超过 max_line_width .默认为 numpy.get_printoptions()['linewidth'] .

precisionint或none,可选

浮点精度。默认为 numpy.get_printoptions()['precision'] .

suppress_small可选的布尔

将“非常接近”零的数字表示为零;默认值为False。非常接近是由精度定义的:如果精度是8,例如,小于5e-9的数字(绝对值)表示为零。默认为 numpy.get_printoptions()['suppress'] .

separator可选的STR

插入元素之间。

prefix可选的STR
后缀:str,可选

前缀和后缀字符串的长度用于分别对齐和包装输出。数组通常打印为:

prefix + array2string(a) + suffix

输出由前缀字符串的长度填充,并在列强制换行 max_line_width - len(suffix) . 应该注意的是,前缀和后缀字符串的内容不包括在输出中。

style_ Novalue,可选

没有效果,不要使用。

1.14.0 版后已移除.

formatter可调用的dict,可选

如果不是“无”,则键应指示相应格式化函数适用的类型。可调用文件应返回字符串。未指定的类型(通过其相应的键)由默认格式化程序处理。可为其设置格式化程序的单个类型为:

可用于同时设置一组类型的其他键包括:

  • “all”:设置所有类型

  • “int_kind”:设置“int”

  • “float_kind”:设置“float”和“longfloat”

  • “复杂类型”:设置“complexfloat”和“longcomplexfloat”

  • “stru kind”:设置“numpstr”

threshold可选的

触发摘要而不是完全报告的数组元素总数。默认为 numpy.get_printoptions()['threshold'] .

edgeitems可选的

摘要中每个维度开头和结尾的数组项数。默认为 numpy.get_printoptions()['edgeitems'] .

sign字符串,可以是“-”、“+”或“”,可选

控制浮点类型符号的打印。如果“+”,则始终打印正值的符号。如果为“”,则始终在正值的符号位置打印空格(空格字符)。如果是“-”,则省略正值的符号字符。默认为 numpy.get_printoptions()['sign'] .

floatmode可选的STR

控制对 precision 浮点类型的选项。默认为 numpy.get_printoptions()['floatmode'] . 可以采用以下值:

  • “固定”:始终准确打印 precision 小数位数,即使打印的数字多于或少于唯一指定值所需的数字。

  • “唯一”:打印唯一表示每个值所需的最小小数位数。不同的元素可以有不同的位数。的值 precision 选项被忽略。

  • “maxprec”:最多打印 precision 小数位数,但是如果一个元素可以用更少的数字唯一地表示,那么只需用这些数字来打印它。

  • “maxprec_equal”:最多打印 precision 小数位数,但是如果数组中的每个元素都可以用等量的更少的数字唯一地表示,则对所有元素都使用这些数字。

遗产 字符串或 False 可选字符串或

如果设置为字符串 '1.13' 启用1.13传统打印模式。这近似于numpy 1.13打印输出,方法是在浮点数的符号位置包含一个空格,以及0d数组的不同行为。如果设置为 False ,禁用旧模式。无法识别的字符串将被忽略,并发出向前兼容警告。

1.14.0 新版功能.

返回
array_strSTR

数组的字符串表示形式。

加薪
TypeError

如果在 formatter 不返回字符串。

笔记

如果为某个类型指定了格式化程序,则 precision 该类型的关键字被忽略。

这是一个非常灵活的功能; array_reprarray_str 正在使用 array2string 在内部,相同名称的关键字应该在所有三个函数中工作相同。

实例

>>> x = np.array([1e-16,1,2,3])
>>> np.array2string(x, precision=2, separator=',',
...                       suppress_small=True)
'[0.,1.,2.,3.]'
>>> x  = np.arange(3.)
>>> np.array2string(x, formatter={'float_kind':lambda x: "%.2f" % x})
'[0.00 1.00 2.00]'
>>> x  = np.arange(3)
>>> np.array2string(x, formatter={'int':lambda x: hex(x)})
'[0x0 0x1 0x2]'