Je veux fusionner deux tuples nommés sans perdre les noms des clés. Si je fais simplement une fusion avec l'opérateur '+', j'obtiens un tuple comme résultat mais sans les noms.
Par exemple :
n [1]: from collections import namedtuple
In [2]: A = namedtuple("A", "a b c")
In [4]: B = namedtuple("B", "d e")
In [5]: a = A(10, 20, 30)
In [6]: b = B(40, 50)
In [7]: a + b
Out[7]: (10, 20, 30, 40, 50)
Comme vous pouvez le voir dans le cas ci-dessus, le résultat de a + b n'est associé à aucun nom.
Mais j'y arrive en créant un troisième tuple nommé, qui contient les champs de A et B.
In [8]: C = namedtuple("C", A._fields + B._fields)
In [9]: C(*(a + b))
Out[9]: C(a=10, b=20, c=30, d=40, e=50)
Est-ce la bonne méthode ou existe-t-il une meilleure façon de procéder ?