Yan*_*nis 10 python namedtuple python-3.x
是否有可能namedtuple在另一个内部namedtuple?
例如:
from collections import namedtuple
Position = namedtuple('Position', 'x y')
Token = namedtuple('Token', ['key', 'value', Position])
Run Code Online (Sandbox Code Playgroud)
它给出了"ValueError:类型名称和字段名称必须是有效的标识符"
另外,我很好奇是否有更多的Pythonic方法来构建这样的嵌套容器?
Łuk*_*ski 19
您正在混淆两个概念 - namedtuple分配给它们的结构和值.结构需要唯一名称列表.值可以是任何东西,包括另一个namedtuple.
from collections import namedtuple
Position = namedtuple('Position', 'x y')
Token = namedtuple('Token', ['key', 'value', 'position'])
t = Token('ABC', 'DEF', Position(1, 2))
assert t.position.x == 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5091 次 |
| 最近记录: |