Функция printoptions
Функция printoptions из модуля numpy
предназначена для временной настройки параметров
отображения массивов в консоли. Она используется
как менеджер контекста и позволяет указать такие
параметры, как точность вывода чисел, режим
подавления длинных массивов и формат представления
данных.
Синтаксис
with np.printoptions( precision=4, threshold=10, suppress=False, linewidth=75 ):
# код с выводом массивов
print(arr)
Параметры функции
Функция принимает следующие ключевые параметры:
precision : int, default=8
Количество знаков после запятой для чисел с плавающей точкой.
threshold : int, default=1000
Количество элементов, при превышении которого массив сокращается.
edgeitems : int, default=3
Количество элементов в начале и конце массива при сокращении.
linewidth : int, default=75
Максимальное количество символов в строке вывода.
suppress : bool, default=False
Если True, подавляет использование научного формата для малых чисел.
nanstr : str, default='nan'
Строка для отображения значений NaN.
infstr : str, default='inf'
Строка для отображения значений Inf.
Пример использования
Рассмотрим базовое применение функции для управления точностью вывода:
import numpy as np
arr = np.array([0.123456789, 1.987654321, 3.141592653])
with np.printoptions(precision=3):
print(arr)
Результат выполнения кода:
[0.123 1.988 3.142]
Пример подавления научного формата
Функция позволяет управлять отображением очень маленьких чисел:
import numpy as np
arr = np.array([1e-6, 2e-8, 3e-10])
with np.printoptions(suppress=True, precision=10):
print(arr)
Результат выполнения кода:
[0.000001 0.00000002 0.0000000003]
Пример управления сокращением больших массивов
Изменим порог отображения для многомерного массива:
import numpy as np
arr = np.arange(100).reshape(10, 10)
with np.printoptions(threshold=20, edgeitems=2):
print(arr)
Результат выполнения кода:
[[ 0 1 2 ... 7 8 9]
[10 11 12 ... 17 18 19]
...
[80 81 82 ... 87 88 89]
[90 91 92 ... 97 98 99]]
Пример комбинированной настройки
Одновременное изменение нескольких параметров вывода:
import numpy as np
arr = np.array([[0.000123, 123.456789], [0.000456, 456.789123]])
with np.printoptions(precision=2, suppress=True, linewidth=40):
print(arr)
Результат выполнения кода:
[[0. 123.46]
[0. 456.79]]
Пример вложенных контекстов
Функцию можно использовать вложенно для разных настроек вывода:
import numpy as np
arr = np.array([1.23456789, 2.3456789, 3.456789])
with np.printoptions(precision=2):
print('precision=2:', arr)
with np.printoptions(precision=5):
print('precision=5:', arr)
Результат выполнения кода:
precision=2: [1.23 2.35 3.46]
precision=5: [1.23457 2.34568 3.45679]
Смотрите также
-
функцию
set_printoptions,
которая глобально изменяет параметры вывода массивов -
функцию
get_printoptions,
которая возвращает текущие настройки отображения -
функцию
seterr,
которая управляет обработкой ошибок в NumPy -
функцию
geterr,
которая возвращает текущие настройки обработки ошибок