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

Атрибут names

Атрибут names класса dtype возвращает кортеж, содержащий имена полей для составных типов данных. Составные типы включают структурированные массивы, массивы с полями и записи. Если dtype не является составным, атрибут возвращает None.

Синтаксис

dtype.names

Пример

Давайте создадим структурированный массив с полями 'name' и 'age', а затем получим их имена с помощью атрибута names:

import numpy as np dtype = np.dtype([('name', 'U10'), ('age', 'i4')]) arr = np.array([('Alice', 25), ('Bob', 30)], dtype=dtype) res = arr.dtype.names print(res)

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

('name', 'age')

Пример

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

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

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

None

Пример

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

import numpy as np dtype = np.dtype([('id', 'i4'), ('first_name', 'U20'), ('last_name', 'U20')]) arr = np.array([(1, 'John', 'Doe'), (2, 'Jane', 'Smith')], dtype=dtype) for name in arr.dtype.names: print(name)

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

id first_name last_name

Пример

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

import numpy as np dtype = np.dtype([('x', 'f4'), ('y', 'f4'), ('z', 'f4')]) arr = np.array([(1.0, 2.0, 3.0), (4.0, 5.0, 6.0)], dtype=dtype) for name in arr.dtype.names: print(f"{name}: {arr[name]}")

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

x: [1. 4.] y: [2. 5.] z: [3. 6.]

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

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