Описание тега namedtuple

NoneNamedtuple - это структура данных, предоставляемая модулем коллекций Python. Он позволяет создавать кортежи с именованными элементами (например, кортеж Student со значениями (имя, школа, возраст), а не кортеж с двумя строками и целым числом).
3 ответа

Какие типы данных может содержать именованный кортеж в своих полях?

Я посмотрел здесь документацию по Python по именованным кортежам, и я не могу понять, какие допустимые типы данных они могут использовать. Или, может быть, это не совсем очевидно для меня. Можно ли с уверенностью сказать, что он может принимать любы…
26 фев '16 в 16:57
2 ответа

Передача "списков аргументов" как именованного кортежа в python

Я создал именованный кортеж с именем Engine, который содержит большую часть информации, которую я хочу передать моей программе. Внутри этого кортежа есть пара параметров и два экземпляра класса, которые используются методами ниже по течению. Engine …
03 окт '12 в 20:21
2 ответа

Python NamedTuple для C++ Struct

Я искал в Интернете в течение нескольких часов. Кто-нибудь знает, как проанализировать именованный кортеж, возвращенный из функции Python в структуру или просто в отдельные переменные. У меня проблемы с получением данных из возвращенного указателя. …
29 окт '16 в 17:23
2 ответа

Правильно перегрузить __add__ именованного кортежа

Я пытаюсь перегрузить __add__ метод на экземплярах namedtuple, и у меня возникли некоторые проблемы. Параметры, введенные в мои именованные кортежи, генерируются динамически. Четыре параметра всегда одинаковы и в одинаковом порядке, но остальные мог…
18 авг '17 в 03:43
7 ответов

Классы данных и типизация. Основные варианты использования.

Короче PEP-557 ввел классы данных в стандартную библиотеку Python, которые в основном могут выполнять ту же роль, что и collections.namedtuple а также typing.NamedTuple, И теперь мне интересно, как разделить сценарии использования, в которых namedt…
1 ответ

Python json object_hook

Я столкнулся с проблемой, в которой я получаю отформатированное сообщение, созданное этими функциями утилит: Пример вывода: MSG(variable_group=MSG(x=0,y=0,z=0), variable1='name', variable2=1) Вот функции, используемые для создания сообщения. def _js…
23 май '18 в 19:24
0 ответов

Как я могу отобразить вложенный именованный кортеж в класс с вложенными "полями данных"?

У меня есть класс Python class PointStamped который позволяет определять вложенные "поля данных" (например, p.header.frame_id="test", увидеть ниже). Я хотел бы отобразить поля соответствующего именованного кортежа PointStampedNamedtuple = namedtuple…
18 июн '18 в 14:10
1 ответ

Что означает *tuple и **dict в Python?

Как уже упоминалось в PythonCookbook, * может быть добавлен перед кортежем, и что делает * значит здесь? Глава 1.18. Отображение имен на элементы последовательности: from collections import namedtuple Stock = namedtuple('Stock', ['name', 'shares', '…
1 ответ

Как я могу применить именованный кортеж к функции?

В Python, если у вас есть словарь d = {'foo': 1, 'bar': False} Вы можете применить это к функции, которая принимает foo а также bar аргументы по ключевым словам def func(foo, bar): # Do something complicated here pass func(**d) Но если вместо этого …
31 окт '13 в 13:02
1 ответ

Словарь | класс | именной кортеж из YAML

У меня есть YAML-файл большого размера (~40 строк), который я загружаю с помощью PyYAML. Это, конечно, разбирается в большой словарь плюс несколько массивов. У меня вопрос: как управлять данными. Я, конечно, могу оставить его в словаре вывода и рабо…
04 фев '19 в 09:06
6 ответов

Каковы основные отличия NamedTuple и TypedDict в Python / mypy

Мне кажется, что NamedTuple а также TypedDict довольно похожи, и сами разработчики Python признали это. Что касается PEP, я бы предпочел добавить общий раздел о NamedTuple и TypedDict, они очень похожи, и последний уже ведет себя структурно. Как вы …
21 ноя '18 в 09:40
1 ответ

Pytest и округление поплавков в именованных кортежах

Если два именованных кортежа равны, они могут быть утверждены в pytest следующим образом: assert tuple_under_test == expected_tuple Я хочу сделать то же самое для именованных кортежей, содержащих float. Суть в том, что эти значения с плавающей точко…
27 ноя '17 в 13:59
1 ответ

Как получить все атрибуты в Python для класса, который наследуется от named_tuple

У меня есть класс Python, который я наследую от именованного кортежа. Я добавляю еще один атрибут к его экземпляру from collections import namedtuple class Test(namedtuple("Test", ('a', 'b', 'c', 'd', 'e'))): pass T = Test(1,2,3,4,5) T.list = [ 1,2,…
20 июл '17 в 18:56
1 ответ

В Python я могу определить именованный кортеж, используя typename?

Интересно, почему третья строка в фрагменте B вызовет ошибку. Насколько я понимаю, во второй строке фрагмента B (и A) я создал переменную класса (не экземпляр класса) cls_obj чей тип / имя класса Duck, Это как class Duck(...): ...Code goes here cls_…
14 июл '16 в 04:29
1 ответ

Является ли использование __getattribute__ для namedtuple: плохой практикой?

Я изучаю возможность замены очень большого количества небольших словарей вместо именованных кортежей. Поскольку ключи dict (строки) были сопоставлены с именами полей именованных кортежей, я должен использовать излишний метод getattribute именованног…
10 мар '17 в 18:11
2 ответа

Наследовать namedtuple из базового класса в Python

Можно ли произвести namedtuple который наследует от базового класса? Что я хочу это Circle а также Rectangle являются namedtuples и наследуются от общего базового класса ('Shape'): from collections import namedtuple class Shape: def addToScene(self,…
23 авг '16 в 10:19
1 ответ

Python укроп: рассол namedtuple, похоже, не работает

Я назвал кортеж внутри класса. При травлении с использованием укропа он жалуется на классическую проблему невозможности найти объект namedtuple в верхнем модуле. import dill as pickle class NNRTMParse(object): def __init__(self,logfile)): . . . . se…
07 окт '16 в 03:11
1 ответ

Словарь с лямбда-значениями обновляет все записи

Я в Python 2.7. У меня есть два класса и один именованный кортеж. Один класс содержит словарь в качестве атрибута экземпляра и функцию, назначаемую этому словарю. (Это очень упрощенная версия ситуации). Именованный кортеж достаточно прост. Другой кл…
29 сен '18 в 15:01
3 ответа

Строка именованных к списку

Как бы я преобразовал строку именованных кортежей в список? Проблема в том, что я должен хранить список именованных кортежей в столбце в SQLite, который (очевидно) не поддерживает формат. Я думал просто преобразовать это в строку. Однако, так как мо…
28 июл '13 в 13:46
1 ответ

Вредные побочные эффекты для разных именованных кортежей с одинаковым typename?

Рассмотрим следующую функцию: >>> from collections import namedtuple >>> def make_thing(**kwargs): ... ThingClass = namedtuple('ThingClass', kwargs.keys()) ... return ThingClass(**kwargs) ... >>> make_thing(x=1,y=2,z=3) Th…
29 июл '13 в 10:38