Exercices python aide.
Fermé
Frenzy
-
Modifié le 16 nov. 2020 à 15:33
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 - 18 nov. 2020 à 13:29
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 - 18 nov. 2020 à 13:29
A voir également:
- Écrire une fonction my_filter qui reçoit une liste lst et une fonction booléenne f en paramètres et renvoie une nouvelle liste constituée des éléments de lst pour lesquels la fonction f renvoie true.
- Citizen code python - Accueil - Outils
- Python par la pratique : 101 exercices corrigés pdf ✓ - Forum Python
- Exercice python - Forum Python
- Python retour à la ligne dans le code - Forum Python
11 réponses
yg_be
Messages postés
23312
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
6 novembre 2024
Ambassadeur
1 552
16 nov. 2020 à 15:52
16 nov. 2020 à 15:52
Phil_1857
Messages postés
1872
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
28 février 2024
168
16 nov. 2020 à 16:14
16 nov. 2020 à 16:14
Bonjour Frenzy,
Si, tu as le droit, mais pour t'aiguiller, il faut qu'on voie d'abord ce que tu as fais, sinon, ca revient à te donner la solution toute cuite ...
Tu nous dis que tu as fait des essais, fait nous voir le code et on te dira
Quand on connait les listes Python, comparer 2 listes et trouver la position d'un élément dans une liste, ce sont les bases
Si, tu as le droit, mais pour t'aiguiller, il faut qu'on voie d'abord ce que tu as fais, sinon, ca revient à te donner la solution toute cuite ...
Tu nous dis que tu as fait des essais, fait nous voir le code et on te dira
Quand on connait les listes Python, comparer 2 listes et trouver la position d'un élément dans une liste, ce sont les bases
def identique(l1, l2):
v = ”True“
f = ”false"
if l1 and l2 == list:
return sorted(l1)==sorted(l2)
if l1 != l2 :
return (type(f))
elif l1 == l2 :
return (type(v))
else:
return (type(f))
a = [1,2,3,4]
b = [4,3,2,1]
print(identique(a, b))
Voilà ce que j’ai fais pour l’exercice 6
v = ”True“
f = ”false"
if l1 and l2 == list:
return sorted(l1)==sorted(l2)
if l1 != l2 :
return (type(f))
elif l1 == l2 :
return (type(v))
else:
return (type(f))
a = [1,2,3,4]
b = [4,3,2,1]
print(identique(a, b))
Voilà ce que j’ai fais pour l’exercice 6
Phil_1857
Messages postés
1872
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
28 février 2024
168
Modifié le 16 nov. 2020 à 17:20
Modifié le 16 nov. 2020 à 17:20
Ok mais tu n'as pas utilisé les balises de code et on ne voit pas les indentations, important en Python:
Reposte ton code, mode d'emploi ici:
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Visuellement, quand tu aura validé ta réponse ça doit ressembler à ceci :
Au fait, est-ce que ton code fonctionne ?
Moi, je ne pense pas et je vois déjà tes trucs à changer pour te guider vers la solution
Reposte ton code, mode d'emploi ici:
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Visuellement, quand tu aura validé ta réponse ça doit ressembler à ceci :
def test(): print('test') test()
Au fait, est-ce que ton code fonctionne ?
Moi, je ne pense pas et je vois déjà tes trucs à changer pour te guider vers la solution
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Phil_1857
Messages postés
1872
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
28 février 2024
168
Modifié le 16 nov. 2020 à 18:19
Modifié le 16 nov. 2020 à 18:19
ok mais tu n'as pas mis les balises de code : regardes ton code il ne ressemble pas à mon exemple
Tu n'as pas lu le mode d'emploi ?
def test(): print('test') test()
Tu n'as pas lu le mode d'emploi ?
Phil_1857
Messages postés
1872
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
28 février 2024
168
Modifié le 16 nov. 2020 à 19:03
Modifié le 16 nov. 2020 à 19:03
Ben non, tu le vois bien toi -même quand tu valides ta réponse, ca doit ressembler à mon exemple avec les couleurs et tout
Tu fais un copié/collé de ton code ici
Tu sélectionnes tout le code à la souris, tu cliques la petite flèche vers le bas dans la barre d'icones au dessus, et tu sélectionne Python dans la liste
Maintenant tu vois les balises < code python > et < /code > qui encadrent ton code
et quand tu valides , tu le vois apparaitre comme sur mon exemple ...
C'est simple, j'y arrive bien, moi
Tu fais un copié/collé de ton code ici
Tu sélectionnes tout le code à la souris, tu cliques la petite flèche vers le bas dans la barre d'icones au dessus, et tu sélectionne Python dans la liste
Maintenant tu vois les balises < code python > et < /code > qui encadrent ton code
et quand tu valides , tu le vois apparaitre comme sur mon exemple ...
C'est simple, j'y arrive bien, moi
Phil_1857
Messages postés
1872
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
28 février 2024
168
Modifié le 16 nov. 2020 à 19:46
Modifié le 16 nov. 2020 à 19:46
AAAAAAAAAAAAAAH ! Super
Bon, 1er point: sais-tu que les mots clés True et False existent déjà en Python, donc pas besoin de définir
v = "True" f = "false"
Donc tu te rends compte maintenant que quand tu écris:
tu retournes le type de la variable f
or f est une string (une chaine de caractères), donc type(f) = <class 'str'>
Ce n'est pas vraiment ce que tu veux ...
Ce que tu veux, c'est retourner True ou False, donc:
ou bien
OK ?
Ensuite, lorsque tu écris :
tu penses faire quoi exactement ?
J'attend ta réponse à mes questions pour te parler de la suite...
Bon, 1er point: sais-tu que les mots clés True et False existent déjà en Python, donc pas besoin de définir
v = "True" f = "false"
Donc tu te rends compte maintenant que quand tu écris:
return (type(f))
tu retournes le type de la variable f
or f est une string (une chaine de caractères), donc type(f) = <class 'str'>
Ce n'est pas vraiment ce que tu veux ...
Ce que tu veux, c'est retourner True ou False, donc:
return(True)
ou bien
return(False)
OK ?
Ensuite, lorsque tu écris :
if l1 and l2 == list:
tu penses faire quoi exactement ?
J'attend ta réponse à mes questions pour te parler de la suite...
Phil_1857
Messages postés
1872
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
28 février 2024
168
Modifié le 16 nov. 2020 à 20:31
Modifié le 16 nov. 2020 à 20:31
tu ne répond pas a ma question :
Ensuite, lorsque tu écris :
tu penses faire quoi exactement ?
pour moi, ce n'est pas bon (ce n'est pas ce que tu crois)
J'ai testé ton code il ne passe jamais dans le cas
Par contre il passe dans:
puisque les 2 listes sont différentes, et forcement il retourne <class 'str'>
Il faudrait écrire:
Mais répond moi pour ma 1ere question .... (je vois ce que tu voulais faire, mais ce n'est pas comme ça qu'on l'écrit)
Ensuite, lorsque tu écris :
if l1 and l2 == list:
tu penses faire quoi exactement ?
pour moi, ce n'est pas bon (ce n'est pas ce que tu crois)
J'ai testé ton code il ne passe jamais dans le cas
if l1 and l2 == list: return sorted(l1)==sorted(l2)
Par contre il passe dans:
if l1 != l2 : return (type(f))
puisque les 2 listes sont différentes, et forcement il retourne <class 'str'>
Il faudrait écrire:
if l1 != l2 : return (False)
Mais répond moi pour ma 1ere question .... (je vois ce que tu voulais faire, mais ce n'est pas comme ça qu'on l'écrit)
Phil_1857
Messages postés
1872
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
28 février 2024
168
17 nov. 2020 à 13:02
17 nov. 2020 à 13:02
Hello Frenzy,
Alors, as-tu trouvé ce qui ne va pas ?
Alors, as-tu trouvé ce qui ne va pas ?
Phil_1857
Messages postés
1872
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
28 février 2024
168
Modifié le 18 nov. 2020 à 13:30
Modifié le 18 nov. 2020 à 13:30
Hello Frenzy,
ce n'est pas comme ça que tu testera si l1 et l2 sont des listes !
list est un type d'objet, il est égal à <class 'list'>
l1 and l2 est une expression booléenne, elle est égale à l2
donc if l1 and l2 ne sera jamais égal à list
Il faudrait plutôt faire ça:
if l1 and l2 == list:
ce n'est pas comme ça que tu testera si l1 et l2 sont des listes !
list est un type d'objet, il est égal à <class 'list'>
l1 and l2 est une expression booléenne, elle est égale à l2
donc if l1 and l2 ne sera jamais égal à list
Il faudrait plutôt faire ça:
if(type(l1) == list and type(l2) == list):
16 nov. 2020 à 16:03