РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
445 of 541 menu

Атрибут alignment

Атрибут alignment класса dtype возвращает выравнивание (alignment) типа данных в байтах. Выравнивание определяет, по какому адресу в памяти должны располагаться элементы массива для оптимального доступа. Значение выравнивания всегда равно размеру элемента для простых типов или максимальному выравниванию среди полей для составных типов.

Синтаксис

dtype.alignment

Атрибут не принимает параметров и возвращает целое число, обозначающее выравнивание типа данных в байтах.

Пример

Давайте получим выравнивание для целочисленного типа int32:

import numpy as np dt = np.dtype('int32') print(dt.alignment)

Результат выполнения кода:

4

Пример

Давайте сравним выравнивание для разных числовых типов:

import numpy as np dt_int8 = np.dtype('int8') dt_int16 = np.dtype('int16') dt_int64 = np.dtype('int64') dt_float64 = np.dtype('float64') print(dt_int8.alignment) print(dt_int16.alignment) print(dt_int64.alignment) print(dt_float64.alignment)

Результат выполнения кода:

1 2 8 8

Как видно, выравнивание равно размеру соответствующего типа данных в байтах.

Пример

Давайте создадим составной тип данных и посмотрим на его выравнивание:

import numpy as np dt = np.dtype([('x', 'int8'), ('y', 'float64')]) print(dt.alignment)

Результат выполнения кода:

8

Выравнивание составного типа равно максимальному выравниванию среди его полей, то есть 8 байт (от типа float64).

Пример

Давайте создадим тип данных с выравниванием, отличным от размера, используя параметр align:

import numpy as np dt = np.dtype([('a', 'int8'), ('b', 'int32')], align=True) print(dt.alignment)

Результат выполнения кода:

4

При создании с параметром align=True выравнивание устанавливается равным максимальному выравниванию среди полей.

Смотрите также

  • класс dtype,
    который представляет тип данных в NumPy
  • атрибут itemsize,
    который возвращает размер элемента в байтах
  • атрибут byteorder,
    который возвращает порядок байтов типа данных
  • атрибут type,
    который возвращает Python-тип, соответствующий dtype
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить