numpy.set_string_function

numpy.set_string_function(f, repr=True)[源代码]

设置一个python函数,以便在打印数组时使用。

参数
f功能或无

用于美化打印数组的函数。函数应该只需要一个数组参数,并返回数组表示形式的字符串。如果没有,该函数将重置为默认的numpy函数以打印数组。

repr可选的布尔

如果为真(默认值),则显示漂亮打印的函数 (__repr__ )如果设置为false,则返回默认字符串表示形式的函数 (__str__ )被设置。

实例

>>> def pprint(arr):
...     return 'HA! - What are you going to do now?'
...
>>> np.set_string_function(pprint)
>>> a = np.arange(10)
>>> a
HA! - What are you going to do now?
>>> _ = a
>>> # [0 1 2 3 4 5 6 7 8 9]

我们可以将函数重置为默认值:

>>> np.set_string_function(None)
>>> a
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

repr 影响美观的打印或正常的字符串表示。注意 __repr__ 仍受设置影响 __str__ 因为返回字符串中每个数组元素的宽度变为等于 __str__() .

>>> x = np.arange(4)
>>> np.set_string_function(lambda x:'random', repr=False)
>>> x.__str__()
'random'
>>> x.__repr__()
'array([0, 1, 2, 3])'