[Python] typing.NamedTuple - valori di default con definizione funzionale
Massimiliano della Rovere
massimiliano.dellarovere a gmail.com
Mar 8 Mar 2022 21:12:19 CET
Errata: il codice di Links ovviamente è:
Links = typing.NamedTuple(
"Links",
tuple(
(cardinal_point.value, int)
for cardinal_point in CARDINAL_POINTS_6_NS))
ho anche provato ad aggiungere questa modifica dopo la creazione di Links,
ma non ha effetto.
Links._field_defaults = {
cardinal_point.value: None
for cardinal_point in CARDINAL_POINTS_6_NS
}
suppongo che provare a ridefinire __new__ possa essere la soluzione...
Il giorno mar 8 mar 2022 alle ore 20:48 Massimiliano della Rovere <
massimiliano.dellarovere a gmail.com> ha scritto:
> Salve a tutti!
> Sto cercando in python 3.10 di creare una typing.NamedTuple (*typing.*
> non *collections.*) in questo modo:
>
> Links = typing.NamedTuple(
> "Links",
> {
> cardinal_point.value: int
> for cardinal_point in CARDINAL_POINTS_6_NS
> })
> e fin qui funziona tutto.
>
> Non riesco a capire se e come ci sia modo di inserire anche i parametri di
> default.
>
> Non posso usare la versione:
> class Links(typing.NamedTuple):
> colonna: int = valore
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20220308/2f79f946/attachment.html>
Maggiori informazioni sulla lista
Python