Comment passer le tuple comme argument en Python?
Supposons que je veux une liste de tuples. Voici ma première idée:
li = []
li.append(3, 'three')
Qui se traduit par:
Traceback (most recent call last):
File "./foo.py", line 12, in <module>
li.append('three', 3)
TypeError: append() takes exactly one argument (2 given)
J'ai donc recours à:
li = []
item = 3, 'three'
li.append(item)
qui fonctionne, mais semble trop verbeux. Est-il un meilleur moyen?
source d'informationauteur Eric Wilson
Vous devez vous connecter pour publier un commentaire.
Ajouter plus de parenthèses:
Parenthèses avec une virgule créer un tuple, sauf si c'est une liste d'arguments.
Qui signifie:
Un effet similaire se produit avec 0 de longueur n-uplet:
C'est parce que c'est pas un tuple, c'est deux arguments de la
add
méthode. Si vous voulez le donner un argument qui est un n-uplet, l'argument lui-même doit être(3, 'three')
:Parenthèses utilisées pour définir un tuple sont facultatifs en retour et l'adéquation des énoncés. j'.e:
en appel de la fonction, vous devez définir explicitement le tuple:
il jette cette erreur, car la liste.ajouter ne prend qu'un seul argument
essayer cette
liste += ['x','y','z']