Spec-Zone.ru › NumPy 1.18

numpy.set_printoptions

numpy.set_printoptions(precision=None, threshold=None, edgeitems=None, linewidth=None, suppress=None, nanstr=None, infstr=None, formatter=None, sign=None, floatmode=None, **kwarg) [source]

Установить параметры вывода.

Эти параметры определяют способ отображения чисел с плавающей точкой, массивов и других объектов NumPy.

Параметры
precisionint or None, optional

Число знаков после запятой для вывода чисел с плавающей точкой (по умолчанию 8). Может быть равно None, если floatmode не fixed, чтобы печатать столько цифр, сколько необходимо для уникальной спецификации значения.

thresholdint, optional

Общее количество элементов массива, которые вызывают обобщение вместо полного представления (по умолчанию 1000). Для всегда использования полного представления без обобщения, передайте sys.maxsize.

edgeitemsint, optional

Количество элементов массива в сводке в начале и в конце каждого измерения (по умолчанию 3).

linewidthint, optional

Количество символов в строке для вставки разрывов строк (по умолчанию 75).

suppressbool, optional

Если True, всегда печатайте числа с плавающей точкой с использованием фиксированной точки, в этом случае числа, равные нулю в текущей точности, будут напечатаны как ноль. Если False, используется научная запись, когда абсолютное значение наименьшего числа < 1e-4 или отношение максимального абсолютного значения к минимальному > 1e3. По умолчанию False.

nanstrstr, optional

Строковое представление числа с плавающей точкой, не являющегося числом (по умолчанию nan).

infstrstr, optional

Строковое представление бесконечности с плавающей точкой (по умолчанию inf).

signstring, either ‘-‘, ‘+’, or ‘ ‘, optional

Управляет выводом знака чисел с плавающей точкой. Если ‘+’, всегда выводить знак положительных значений. Если ‘ ‘, всегда выводит пробел в позиции знака положительных значений. Если ‘-’, опускать знак положительных значений. (по умолчанию ‘-‘)

formatterdict of callables, optional

Если не равно None, ключи должны указывать тип(ы), к которому(ым) применяется соответствующая функция форматирования. Вызываемые объекты должны возвращать строку. Типы, которые не указаны (соответствующими ключами), обрабатываются функциями форматирования по умолчанию. Индивидуальные типы, для которых можно установить функцию форматирования:

  • ‘bool’
  • ‘int’
  • ‘timedelta’ : a numpy.timedelta64
  • ‘datetime’ : a numpy.datetime64
  • ‘float’
  • ‘longfloat’ : 128-битные числа с плавающей точкой
  • ‘complexfloat’
  • ‘longcomplexfloat’ : составленные из двух 128-битных чисел с плавающей точкой
  • ‘numpystr’ : типы numpy.string_ и numpy.unicode_
  • ‘object’ : np.object_ массивы
  • ‘str’ : все остальные строки

Другие ключи, которые могут быть использованы для установки группы типов одновременно:

  • ‘all’ : устанавливает все типы
  • ‘int_kind’ : устанавливает ‘int’
  • ‘float_kind’ : устанавливает ‘float’ и ‘longfloat’
  • ‘complex_kind’ : устанавливает ‘complexfloat’ и ‘longcomplexfloat’
  • ‘str_kind’ : устанавливает ‘str’ и ‘numpystr’
floatmodestr, optional

Управляет интерпретацией параметра precision для чисел с плавающей точкой. Может принимать следующие значения (по умолчанию maxprec_equal):

  • ‘fixed’: Always print exactly precision fractional digits,

    даже если это приведет к печати больше или меньше цифр, чем необходимо для уникальной спецификации значения.

  • ‘unique’: Печать минимального числа дробных цифр, необходимых

    для уникальной представления каждого значения. Разные элементы могут иметь различное количество цифр. Значение параметра precision игнорируется.

  • ‘maxprec’: Print at most precision fractional digits, but if

    элемент можно уникально представить с меньшим количеством цифр, печатаем его только с этим количеством.

  • ‘maxprec_equal’: Print at most precision fractional digits,

    но если каждый элемент массива можно уникально представить с одинаковым количеством меньших цифр, используйте это количество цифр для всех элементов.

legacystring or False, optional

Если установлено в строку ‘1.13’ включает режим печати 1.13. Это приближает вывод печати numpy 1.13, включив пробел в позиции знака чисел с плавающей точкой и разное поведение для 0d массивов. Если установлено в False, отключает режим legacy. Нераспознанные строки будут игнорироваться с предупреждением для обратной совместимости.

Новое в версии 1.14.0.

См. также

get_printoptions, printoptions, set_string_function, array2string

Примечания

formatter всегда сбрасывается при вызове set_printoptions.

Используйте printoptions в качестве контекстного менеджера для временной установки значений.

Примеры

Точность чисел с плавающей точкой может быть установлена:

>>> np.set_printoptions(precision=4)
>>> np.array([1.123456789])
[1.1235]

Длинные массивы могут быть сгруппированы:

>>> np.set_printoptions(threshold=5)
>>> np.arange(10)
array([0, 1, 2, ..., 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.])

Можно использовать пользовательскую функцию форматирования для отображения элементов массива по желанию:

>>> np.set_printoptions(formatter={'all':lambda x: 'int: '+str(-x)})
>>> x = np.arange(3)
>>> x
array([int: 0, int: -1, int: -2])
>>> np.set_printoptions()  # formatter gets reset
>>> x
array([0, 1, 2])

Чтобы вернуть значения по умолчанию, можно использовать:

>>> np.set_printoptions(edgeitems=3, infstr='inf',
... linewidth=75, nanstr='nan', precision=8,
... suppress=False, threshold=1000, formatter=None)

Также для временной переопределения параметров используйте printoptions в качестве контекстного менеджера:

>>> with np.printoptions(precision=2, suppress=True, threshold=5):
...     np.linspace(0, 10, 10)
array([ 0.  ,  1.11,  2.22, ...,  7.78,  8.89, 10.  ])

© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.18/reference/generated/numpy.set_printoptions.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API