«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Подробное объяснение Python названных кортежей: преимущества сравнения обычных кортежей

Подробное объяснение Python названных кортежей: преимущества сравнения обычных кортежей

Опубликовано в 2025-03-12
Просматривать:979

What are Python\'s Named Tuples and How Do They Compare to Regular Tuples?

, что называют кортежи в Python? Давайте углубимся в их использование и сравнение с регулярными кортежами.

создание и использование именованных кут -классов

для создания названных кортежей, мы используем функцию Collections.namedtuple Factory. Например, чтобы определить именованную кортеж для баллов:

из коллекций импорт именованной Point = nameltuple ('point', 'x y')

from collections import namedtuple
Point = namedtuple('Point', 'x y')

pt1 = point (1.0, 5.0) pt2 = point (2.5, 1.5)

pt1 = Point(1.0, 5.0)
pt2 = Point(2.5, 1.5)

line_length = sqrt ((pt1.x - pt2.x) ** 2 (pt1.y - pt2.y) ** 2) # object -like syntax

v.] of v.] of v.] of syntax
line_length = sqrt((pt1.x - pt2.x)**2   (pt1.y - pt2.y)**2)  # Object-like syntax
]

    улучшенная читаемость:
  1. , именованные атрибуты Tuple. Ссылка. Типы значений. ОБЪЕКТЫ ОБЯЗАТЕЛЬНОСТЬ ИЗНАЧЕНИЯ АТРИБУТЫ Указывают читаемость.
  2. простые типы значений передаются в виде параметров функциям, улучшая ясность функции.
  3. за пределами основных названных именных ставок
  4. , именованные, могут даже заменить неподвижные классы только на Fields. Они также могут служить базовыми классами для пользовательских именованных кутлеров:
  5. class point (nameTuple ('point', 'x y')): [...] # Определите дополнительные методы

с именованными списками и изменяемыми именованными частями

. В Python нет встроенного эквивалента для «названных списков». Однако для изменяющихся типов записей существуют рецепты или сторонние модули, которые позволяют устанавливать новые значения для атрибутов:

    из Rcdtype importtype recordtype Point = recordtype ('point', 'x y') PT1 = точка (1,0, 5,0) pt1.x = 2.0 # mitable!
  • , именованные в кадунах, можно манипулировать как словарями с использованием pt1._asdict (), обеспечивая легкий доступ к своим полям и совместимость с словарями. читаемость, проверка типов и настраиваемость. Независимо от того, работаете ли вы с простыми типами значений или сложными структурами записей, названные кортежи могут повысить эффективность и ясность вашего кода.
  • ]
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3