Escriba sugerencias en namedtuple

Considere la siguiente pieza de código:

from collections import namedtuple point = namedtuple("Point", ("x:int", "y:int")) 

El Código anterior es solo una forma de demostrar lo que estoy tratando de lograr. Me gustaría hacer namedtuple con sugerencias de tipo.

¿Conoces alguna forma elegante de cómo lograr resultados como se espera?

La Sintaxis preferida para una tupla con nombre escrito desde 3.6 es

 from typing import NamedTuple class Point(NamedTuple): x: int y: int = 1 # Set default value Point(3) # -> Point(x=3, y=1) 

Edite Iniciar Python 3.7, considere usar clases de datos (es posible que su IDE aún no los admita para la comprobación de tipos estáticos):

 from dataclasses import dataclass @dataclass class Point: x: int y: int = 1 # Set default value Point(3) # -> Point(x=3, y=1) 

Puedes usar la typing.NamedTuple

De los docs

Versión namedtuple de namedtuple .

 >>> import typing >>> Point = typing.NamedTuple("Point", [('x', int), ('y', int)]) 

Esto está presente sólo en Python 3.5 en adelante.