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

Атрибут str

Атрибут str класса dtype возвращает строковое описание типа данных, которое можно использовать для создания нового объекта dtype. Это строковое представление является канонической формой типа, совместимой с синтаксисом, который понимает конструктор dtype.

В отличие от атрибута name, который возвращает человекочитаемое имя, str возвращает техническую строку, точно определяющую структуру данных, включая порядок байтов, размерность и состав полей для составных типов.

Синтаксис

dtype.str

Где dtype - объект типа данных NumPy.

Пример

Получим строковое представление для простого целочисленного типа:

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

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

"<i4"

Пример

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

import numpy as np dt1 = np.dtype('float64') dt2 = np.dtype('complex128') print(dt1.str) print(dt2.str)

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

"<f8" "<c16"

Символ < обозначает порядок байтов little-endian, f8 - 8-байтовое число с плавающей точкой, c16 - 16-байтовое комплексное число.

Пример

Используем строковое представление для восстановления типа данных:

import numpy as np dt_orig = np.dtype([('x', 'f4'), ('y', 'i2')]) dt_str = dt_orig.str dt_new = np.dtype(dt_str) print(dt_orig) print(dt_str) print(dt_new)

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

[('x', '<f4'), ('y', '<i2')] "[('x', '<f4'), ('y', '<i2')]" [('x', '<f4'), ('y', '<i2')]

Как видно, строка точно описывает структуру составного типа данных.

Пример

Получим строковое представление для строкового типа:

import numpy as np dt = np.dtype('S10') res = dt.str print(res)

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

"|S10"

Символ | означает порядок байтов не применим (для строк), S10 - байтовая строка длиной 10 символов.

Пример

Применим атрибут str к массиву для получения типа его элементов:

import numpy as np arr = np.array([1, 2, 3, 4, 5]) dt_str = arr.dtype.str print(dt_str)

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

"<i8"

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

  • атрибут name,
    который возвращает человекочитаемое имя типа данных
  • атрибут kind,
    который возвращает символ, определяющий категорию типа данных
  • атрибут char,
    который возвращает символ для представления типа данных в строковом виде
  • атрибут itemsize,
    который возвращает размер элемента типа данных в байтах
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить