Creation tuple
Résolu
JFL
-
JFL -
JFL -
Bonjour,
Je n'arrive pas à récupérer le deuxième tuple
D'avance merci beaucoup.
Je n'arrive pas à récupérer le deuxième tuple
fin(ici égal à
(10,11)) dans ma fonction
test. Sauriez-vous me dire comment sortir de cette impasse ?
D'avance merci beaucoup.
def test(debut, fin): x = [((debut), (fin))] print(x) (test (0,1),(10,11))
A voir également:
- Creation tuple
- Creation compte gmail - Guide
- Création site web - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Création compte google - Guide
- Creation compte vinted - Guide
4 réponses
Bonjour,
De nombreuses solutions
De nombreuses solutions
def test(debut, fin): x = [(debut), (fin)] print(x) x = fin print(x) x = fin[0], fin[1] print(x) def test2(debut): x = debut print(x) x = debut[1] print(x) test((0,1), (10,11)) test2([(0,1), (10,11)])
Bonjour,
Quelques rappels sur la syntaxe
... pour que tu comprennes ce qui se passe dans le code que tu as partagé.
(test (0,1), (10, 11))
... signifie construit un tuple de deux éléments, le premier élément étant le résultat de
Sous cette forme, on comprend que
J'avoue ne pas trop voir l'intérêt d'encapsuler le tuple
Accéder aux valeurs d'un tuple
Tu peux extraire les valeurs d'un tuple avec l'opérateur
Exemple 1 :
Exemple 2 :
Bonne chance
Quelques rappels sur la syntaxe
... pour que tu comprennes ce qui se passe dans le code que tu as partagé.
- Généralement on entoure les paramètres d'une fonction par des parenthèse (e.g.
f(x, y, z)
). Dans le code que tu as partagé :
(test (0,1), (10, 11))
... signifie construit un tuple de deux éléments, le premier élément étant le résultat de
test(0, 1), le second élément étant
(10, 11). On comprend alors que
(10, 11)n'entre pas dans la fonction
test. Cette dernière reçoit en argument respectivement
debut = 0et
fin = 1, et c'est pour ça qu'elle retourne
[(0, 1)].
- Il n'est pas utile d'entourer un nom variable de parenthèse (comme tu l'as fait dans ta fonction
test
pour les variablesdebut
etfin
). - Une fois réécrit le code s'écrit plutôt :
def test(debut, fin): x = [(debut, fin)] print(x) test((0,1), (10,11)) # != (test(0, 1), (10, 11))
Sous cette forme, on comprend que
xconstruit une liste qui contient un tuple de deux éléments (respectivement tes paramètres
debutet
fin).
J'avoue ne pas trop voir l'intérêt d'encapsuler le tuple
(debut, fin)dans une liste, tu pourrais te contenter de directement mémoriser ce tuple.
Accéder aux valeurs d'un tuple
Tu peux extraire les valeurs d'un tuple avec l'opérateur
[ ]comme l'a indiqué jee pee ou en l'affectant à une série de variables.
Exemple 1 :
def test(tuple1, tuple2): a = tuple1[0] b = tuple1[1] c = tuple2[0] d = tuple2[1] print(a, b, c, d) test((1, 2), (3, 4))
Exemple 2 :
def test(tuple1, tuple2): (a, b) = tuple1 (c, d) = tuple2 print(a, b, c, d) test((1, 2), (3, 4))
Bonne chance