numpy.array2string#
- numpy.array2string(a, max_line_width=None, precision=None, suppress_small=None, separator=' ', prefix='', *, formatter=None, threshold=None, edgeitems=None, sign=None, floatmode=None, suffix='', legacy=None)[源代码]#
返回数组的字符串表示形式。
- 参数:
- andarray
输入数组。
- max_line_widthint, 可选
如果文本长度超过 max_line_width,则插入换行符。默认为
numpy.get_printoptions()['linewidth']。- precisionint 或 None, 可选
浮点数精度。默认为
numpy.get_printoptions()['precision']。- suppress_smallbool, 可选
将“非常接近”零的数字表示为零;默认为 False。非常接近由精度定义:如果精度为 8,例如,绝对值小于 5e-9 的数字将表示为零。默认为
numpy.get_printoptions()['suppress']。- separatorstr, 可选
插入到元素之间。
- prefixstr, 可选
- suffixstr, 可选
前缀和后缀字符串的长度用于分别对齐和换行输出。数组通常打印为
prefix + array2string(a) + suffix
输出由前缀字符串的长度进行左填充,并在列
max_line_width - len(suffix)处强制换行。应注意,前缀和后缀字符串的内容不包含在输出中。- formatterdict of callables, 可选
如果不是 None,则键应指示相应格式化函数适用的类型。可调用对象应返回一个字符串。未指定(通过其相应键)的类型由默认格式化程序处理。可以设置格式化程序的单个类型包括
‘bool’
‘int’
‘timedelta’ :
numpy.timedelta64‘datetime’ :
numpy.datetime64‘float’
‘longfloat’ : 128 位浮点数
‘complexfloat’
‘longcomplexfloat’ : 由两个 128 位浮点数组成
‘void’ : 类型
numpy.void‘numpystr’ : 类型
numpy.bytes_和numpy.str_
其他可用于一次设置一组类型的键包括
‘all’ : 设置所有类型
‘int_kind’ : 设置 ‘int’
‘float_kind’ : 设置 ‘float’ 和 ‘longfloat’
‘complex_kind’ : 设置 ‘complexfloat’ 和 ‘longcomplexfloat’
‘str_kind’ : 设置 ‘numpystr’
- thresholdint, 可选
触发汇总而不是完整表示的总数组元素数。默认为
numpy.get_printoptions()['threshold']。- edgeitemsint, 可选
每个维度开头和结尾摘要中的数组项数。默认为
numpy.get_printoptions()['edgeitems']。- signstring,可以是 ‘-’、‘+’ 或 ‘ ‘,可选
控制浮点数类型的符号打印。如果为 ‘+’,则始终打印正值的符号。如果为 ‘ ‘,则在正值的符号位置始终打印一个空格(空白字符)。如果为 ‘-’,则省略正值的符号字符。默认为
numpy.get_printoptions()['sign']。版本 2.0 中已更改: sign 参数现在可以是整数类型,而以前类型是浮点类型。
- floatmodestr, 可选
控制浮点数类型的 precision 选项的解释。默认为
numpy.get_printoptions()['floatmode']。可以接受以下值‘fixed’:始终打印 precision 个小数位数,即使这样会打印比唯一指定值所需的更多或更少位数。
‘unique’:打印表示每个值唯一的最小小数位数。不同的元素可能具有不同的位数。将忽略 precision 选项的值。
‘maxprec’:最多打印 precision 个小数位数,但如果某个元素可以用更少的位数唯一表示,则仅打印该位数。
‘maxprec_equal’:最多打印 precision 个小数位数,但如果数组中的每个元素都可以用相等但更少数量的位数唯一表示,则对所有元素使用该位数。
- legacystring 或 False, 可选
如果设置为字符串
'1.13',则启用 1.13 兼容打印模式。这通过在浮点数的符号位置包含空格以及对 0d 数组的不同行为来近似 numpy 1.13 的打印输出。如果设置为 False,则禁用兼容模式。忽略不受识别的字符串,并发出警告以保持前向兼容性。
- 返回:
- array_strstr
数组的字符串表示形式。
- 引发:
- TypeError
如果 formatter 中的可调用对象未返回字符串。
备注
如果为特定类型指定了格式化程序,则 precision 关键字将在此类型上被忽略。
这是一个非常灵活的函数;
array_repr和array_str在内部使用array2string,因此名称相同的关键字在这三个函数中应该具有相同的效果。示例
>>> import numpy as np >>> 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]'