Considere el siguiente fragmento 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 tipográficas.
¿Conoce alguna manera elegante de lograr el resultado previsto?
python
python-3.x
type-hinting
namedtuple
python-dataclasses
Pavel Hanpari
fuente
fuente
Respuestas:
La sintaxis preferida para una tupla con nombre escrita desde 3.6 es
Editar A partir de Python 3.7, considere usar
dataclasses
(es posible que su IDE aún no los admita para la verificación de tipos estáticos):fuente
Puedes usar
typing.NamedTuple
De los documentos
Esto está presente solo en Python 3.5 en adelante
fuente
GeoPoint = NamedTuple('GeoPoint', [('longitude', float), ('latitude', float)])
luego intento geo = GeoPoint (** datos) donde los datos son dictados que contienen las claves y los valores necesariosdecimal.Decimal
, y no ocurre ningún lanzamiento para flotar; (tampoco hay error de tipo :( :( entonces, ¿cómotyping.NamedTuple
funciona esto ? Ver la esencia .github.com / andilabs / 15002176b2bda786b9037077fa06cc71