SyntaxError: invalid syntax
尝试新的类型化namedtuple
语法时出现错误:
class Employee(NamedTuple):
name: str
id: int
在 Python 3.5.2 中,即使根据文档它应该从 3.5+ 开始有效。我错过了什么吗?我已经NamedTuple
从typing
代码中导入。
SyntaxError: invalid syntax
尝试新的类型化namedtuple
语法时出现错误:
class Employee(NamedTuple):
name: str
id: int
在 Python 3.5.2 中,即使根据文档它应该从 3.5+ 开始有效。我错过了什么吗?我已经NamedTuple
从typing
代码中导入。
name
声明您正在使用的和id
字段的类型的语法需要Python 3.6 或更高版本。Python 3.5 不支持所需的变量级类型提示。
在 3.6 版更改: 添加了对PEP 526变量注释语法的支持。
使用文档中也包含的向后兼容语法:
Employee = NamedTuple('Employee', [('name', str), ('id', int)])
因此将字段名称列为(name, type)
元组。
如果您使用的是 Python 3.5,您可能希望切换到文档的 Python 3.5 版本(左上角有一个选择器,或者您可以3
将 URL 中的替换为3.5
)。