Я просмотрел документацию на Python здесь, на namedtuples, и я не могу понять, какие типы легальных данных они могут принять. Или, возможно, это прямо не очевидно для меня.Какие типы данных могут содержать namedtuple в своих полях?
Можно ли сказать, что может быть любые типы данных (например, int, float, string, tuple, list, dict и т. Д.)? Существуют ли типы данных, которые не могут быть вставлены в namedtuple.
Этот вопрос возник из-за моей потребности иметь именованный элемент, который имеет 2 списка. По существу, я пытаюсь сделать это примерно так:
from Collections import namedtuple
list1 = [23,45,12,67]
list2 = [76,34,56,23]
TwoLists = namedtuple("TwoLists", ['x','y'])
tulist = TwoLists(x=list1, y=list2)
type(tulist)
<class '__main__.TwoLists'>
type(tulist.x)
<class 'list'>
print(tulist.x)
[23,45,12,67]
print(tulist.y)
[76,34,56,23]
И это, кажется, работает, по крайней мере, со списками.
Некоторые быстрые поисковые запросы не привели ни к каким примерам, поэтому я добавил фрагмент кода (из интерактивного режима python) для любого другого, который пытается вставить списки в namedtuple и нуждается в примере.
Как бы один явно указать типы данных для 'namedtuple' полей? – Palimondo