Existe-t-il un moyen d'obtenir une valeur d'un tuple dans python à l'aide d'expressions?
def Tup():
return (3,"hello")
i = 5 + Tup(); ## I want to add just the three
Je sais que je peux le faire:
(j,_) = Tup()
i = 5 + j
Mais cela ajouterait quelques dizaines de lignes à ma fonction, en doublant sa longueur.
Tu peux écrire
i = 5 + Tup()[0]
Les tuples peuvent être indexés comme des listes.
La principale différence entre les n-uplets et les listes est que les n-uplets sont immuables - vous ne pouvez pas définir les éléments d'un tuple sur des valeurs différentes, ni ajouter ou supprimer des éléments comme vous le pouvez dans une liste. Mais à part cela, dans la plupart des situations, ils fonctionnent à peu près de la même façon.
Pour tous ceux qui, à l'avenir, cherchent une réponse, j'aimerais donner une réponse beaucoup plus claire à la question.
# for making a Tuple
MyTuple = (89,32)
MyTupleWithMoreValues = (1,2,3,4,5,6)
# to concatinate tuples
AnotherTuple = MyTuple + MyTupleWithMoreValues
print AnotherTuple
# it should print 89,32,1,2,3,4,5,6
# getting a value from a Tuple is similar to a list
firstVal = MyTuple[0]
secondVal = MyTuple[1]
# if you have a function called MyTupleFun that returns a Tuple,
# you might want to do this
MyTupleFun()[0]
MyTupleFun()[1]
# or this
v1,v2 = MyTupleFun()
J'espère que cela clarifie les choses davantage pour quelqu'un.