Запитання з тегом «namedtuple»

11
Що таке "названі кортежі" в Python?
Читаючи зміни в Python 3.1 , я знайшов щось ... несподіване: Тепер кортеж sys.version_info тепер називається кортежем : Я ніколи не чув про названі кортежі раніше, і думав, що елементи можна або проіндексувати цифрами (як у кортежах і списках), або клавішами (як у диктах). Я ніколи не очікував, що вони …

21
значення nametuple та типові значення для необов'язкових аргументів ключового слова
Я намагаюся перетворити довговічний порожній клас "даних" у названий кортеж. Наразі мій клас виглядає так: class Node(object): def __init__(self, val, left=None, right=None): self.val = val self.left = left self.right = right Після перетворення на namedtupleнього виглядає так: from collections import namedtuple Node = namedtuple('Node', 'val left right') Але тут є …

11
Як я уникаю “self.x = x; self.y = y; self.z = z ”шаблон у __init__?
Я бачу подібні зразки def __init__(self, x, y, z): ... self.x = x self.y = y self.z = z ... досить часто, часто з набагато більшими параметрами. Чи є хороший спосіб уникнути такого виснажливого повторення? Чи повинен наслідувати клас namedtupleзамість цього?

6
Перетворіть nametuple в словник
У мене названий клас кортежів у python class Town(collections.namedtuple('Town', [ 'name', 'population', 'coordinates', 'population', 'capital', 'state_bird'])): # ... Я хотів би перетворити екземпляри Town у словники. Я не хочу, щоб він жорстко прив’язувався до імен чи кількості полів у місті. Чи є спосіб написати це так, щоб я міг додати …

2
Введіть підказки в nametuple
Розглянемо наступний фрагмент коду: from collections import namedtuple point = namedtuple("Point", ("x:int", "y:int")) Кодекс вище - це лише спосіб продемонструвати те, що я намагаюся досягти. Я хотів би зробити namedtupleпідказки типу. Чи знаєте ви який-небудь елегантний спосіб досягти результату за задумом?

10
Існування мутантного імені кортежу в Python?
Хтось може змінити nametuple або надати альтернативний клас, щоб він працював для змінних об'єктів? В першу чергу для читабельності, я хотів би щось схоже на nametuple, що робить це: from Camelot import namedgroup Point = namedgroup('Point', ['x', 'y']) p = Point(0, 0) p.x = 10 >>> p Point(x=10, y=0) >>> …

10
Додавання рядків документа до названих кортежів?
Чи можна легко додати рядок документації до іменованого парню просто? я намагався from collections import namedtuple Point = namedtuple("Point", ["x", "y"]) """ A point in 2D space """ # Yet another test """ A(nother) point in 2D space """ Point2 = namedtuple("Point2", ["x", "y"]) print Point.__doc__ # -> "Point(x, y)" …

11
Серіалізація Python з назвою tuple до json
Який рекомендований спосіб серіалізації a namedtupleдо json із збереженими іменами полів? Серіалізація a namedtupleдо json призводить до того, що серіалізуються лише значення та імена полів втрачаються при перекладі. Я хотів би, щоб поля також зберігалися при json-ized і, отже, робили наступне: class foobar(namedtuple('f', 'foo, bar')): __slots__ = () def __iter__(self): …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.