Question

Comment pourrais-je décompresser un tuple d'inconnu en une liste, par exemple?

J'ai un certain nombre de colonnes de données et elles sont scindées en un tuple par une fonction. Je veux décompresser ce tuple en variables mais je ne sais pas combien de colonnes je vais avoir. Existe-t-il un moyen de le décompresser dynamiquement en autant de variables que nécessaire?

Merci pour votre aide:)

Était-ce utile?

La solution

Décompressez le tuple en une liste?

l = list(t)

Autres conseils

Vous pouvez utiliser l'astérisque pour décompresser une longueur variable. Par exemple:

foo, bar, *other = funct()

Ceci devrait placer le premier élément dans toto , le second dans barre , et le reste dans autre .

Mise à jour: j'ai oublié de mentionner qu'il s'agit uniquement d'une compatibilité Python 3.0.

Voulez-vous dire que vous voulez créer des variables à la volée? Comment votre programme saura-t-il s'y référer s'il est créé dynamiquement?

Les n-uplets ont des longueurs, tout comme les listes. Il est parfaitement permis de faire quelque chose comme:

total_columns = len(the_tuple)

Vous pouvez également convertir un tuple en liste, bien que cela ne présente aucun avantage si vous ne souhaitez pas modifier les résultats. (Les tuples ne peuvent pas être modifiés; les listes peuvent.) Mais, de toute façon, convertir un tuple en liste est simple:

my_list = list(the_tuple)

Il existe des moyens de créer des variables à la volée (par exemple, avec eval ), mais encore une fois, comment sauriez-vous vous y référer?

Je pense que vous devriez préciser ce que vous essayez de faire ici.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top