Triage en programmation orienter objet (python)
Résolu
Utilisateur anonyme
-
Phil_1857 Messages postés 1872 Date d'inscription Statut Membre Dernière intervention -
Phil_1857 Messages postés 1872 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Triage en programmation orienter objet (python)
- Citizen code python avis - Accueil - Outils
- Application de programmation - Guide
- Vente objet occasion entre particulier - Guide
- Objet interdit en cabine ryanair - Guide
- Dans la messagerie ci-dessous, envoyez un nouveau message à manon (manon@pixmail.org) en mettant en copie nina (nina@pixmail.org) : objet : colis bonjour, votre colis est arrivé. que répond manon ? ✓ - Forum Loisirs / Divertissements
12 réponses
Regarde la définition de la fonction:
def BulleA(soi, t):
elle admet 2 arguments : soi et t
soi, c'est normal, ca représente l'instance créée à partir de la classe Triage, en l'occurrence g :
g=Triage([1,9,10,0,2,17,-7,-2])
mais il y a aussi l'argument t, qu'il faut bien initialiser quand on invoque la fonction
il faudrait faire normalement g.BulleA(t)
Mais le problème vient de la définition de la fonction:
Etant donné que t est initialisé à la création de l'instance g, avec la fonction __init__, t est
maintenant un attribut de g et donc, dans les méthodes de la classe on peut le retrouver avec
soi.t, donc il faut écrire def BulleA(soi): comme d'ailleurs dans la
plupart des autres méthodes de cette classe, et du coup, à l'intérieur de BulleA, t est connu :
N=len(soi.t) fonctionne sans avoir à passer t en argument
Donc le prof a raison, on invoque la fonction avec g.BulleA()
def BulleA(soi, t):
elle admet 2 arguments : soi et t
soi, c'est normal, ca représente l'instance créée à partir de la classe Triage, en l'occurrence g :
g=Triage([1,9,10,0,2,17,-7,-2])
mais il y a aussi l'argument t, qu'il faut bien initialiser quand on invoque la fonction
il faudrait faire normalement g.BulleA(t)
Mais le problème vient de la définition de la fonction:
Etant donné que t est initialisé à la création de l'instance g, avec la fonction __init__, t est
maintenant un attribut de g et donc, dans les méthodes de la classe on peut le retrouver avec
soi.t, donc il faut écrire def BulleA(soi): comme d'ailleurs dans la
plupart des autres méthodes de cette classe, et du coup, à l'intérieur de BulleA, t est connu :
N=len(soi.t) fonctionne sans avoir à passer t en argument
Donc le prof a raison, on invoque la fonction avec g.BulleA()
Bonjour
en python, il y a un truc fondamental => l'indentation.
Comme tout site de code qui se respecte, CCM dispose d'un outils qui permet (entre autre) de préserver l'indentation : les balises de code.
Voici un petit tuto sur leur bonne utilisation https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
en python, il y a un truc fondamental => l'indentation.
Comme tout site de code qui se respecte, CCM dispose d'un outils qui permet (entre autre) de préserver l'indentation : les balises de code.
Voici un petit tuto sur leur bonne utilisation https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Bonjour LaurieVL
Sais tu ce que signifie
BulleA() missing 1 required positional argument: 't'
en français ?
Compare la définition de ta fonction BulleA() : def BulleA(.......
avec l'appel (pas l'appellation ! :-) ) de cette même fonction : g.BulleA()
Il n'y a pas un truc qui t'interpelle ?
Ou alors c'est que tu as copié/collé et que tu ne connais pas bien Python .....
Sais tu ce que signifie
BulleA() missing 1 required positional argument: 't'
en français ?
Compare la définition de ta fonction BulleA() : def BulleA(.......
avec l'appel (pas l'appellation ! :-) ) de cette même fonction : g.BulleA()
Il n'y a pas un truc qui t'interpelle ?
Ou alors c'est que tu as copié/collé et que tu ne connais pas bien Python .....
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Vous êtes vraiment des personnes désagréables à critiquer sans raison
Je vois bien que vous n'avais rien d'autre à faire mais SVP aller ailleurs si ce n'est pas pour aider ou garder un minimum de savoir vivre
Je vois bien que vous n'avais rien d'autre à faire mais SVP aller ailleurs si ce n'est pas pour aider ou garder un minimum de savoir vivre
désolé, nous avons en effet sans doute négligé de te communiquer ceci: https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
Vous n'aidez pas vous ne faites que dire que je suis novice alors vous riez de ma situation sans aucune aide de votre part je ne comprend pas ce que vous faites ici.
Un forum est fait pour posez des question,
ce que j'ai fait. si vous ne voulez pas répondre c'est bien mais ne répondez pas et c'est tout.
Sinon merci à jordane qui a éditer le texte
Un forum est fait pour posez des question,
ce que j'ai fait. si vous ne voulez pas répondre c'est bien mais ne répondez pas et c'est tout.
Sinon merci à jordane qui a éditer le texte
Laurie, s'interroger sur le fait que tu sois novice n'est pas une critique.
On a tous débuté un jour, mais pour y arriver il ne faut pas mettre la charrue avant les boeufs.
Dire que pour un novice cet exercice est trop optimiste, là c'est une critique, mais constructive
Ça tant que tu ne le dis pas comment veux tu qu'on le devine. Surtout que le code en question est loin de faire penser à un premier exercice.
Il y a de nombreux flemmards qui viennent sur les forums, sans avoir rien suivi en cours depuis plusieurs semaines/mois et qui espèrent qu'on bonne âme fera le boulot à leur place.
C'est contraire à l'esprit de ce forum, ici on tache de donner des pistes de réflexions à ceux qui essayent.
On y met quelques conditions
Si nos questions te vexent, cela peut vouloir dire que tu es susceptible, et bien soit tu le surmontes et peut-être que finalement on pourra t'aider.
Mais cela peut aussi vouloir dire que la situation n'est pas si honnête que tu le dis et que ça t'a piqué au vif.
On veut bien te laisser le bénéfice du doute, mais il faut y mettre du tiens.
yg_be t'as proposé des exercices plus simples, c'est un très bon conseil.
Supposons qu'on te demande de calculer une puissance, alors que tu n'as pas encore appris la multiplication. C'est un peu l'impression que tu donnes. Comprends tu?
On a tous débuté un jour, mais pour y arriver il ne faut pas mettre la charrue avant les boeufs.
Dire que pour un novice cet exercice est trop optimiste, là c'est une critique, mais constructive
je suis étudiante en génie ce n'est pas moi qui décide les travaux que je dois faire et c'est mon premier cours de programmation j'essaie de rendre un travail
Ça tant que tu ne le dis pas comment veux tu qu'on le devine. Surtout que le code en question est loin de faire penser à un premier exercice.
Il y a de nombreux flemmards qui viennent sur les forums, sans avoir rien suivi en cours depuis plusieurs semaines/mois et qui espèrent qu'on bonne âme fera le boulot à leur place.
C'est contraire à l'esprit de ce forum, ici on tache de donner des pistes de réflexions à ceux qui essayent.
On y met quelques conditions
- disposer d'un code facile à lire et indenté
- répondre aux questions que l'on te pose, car contrairement à toi, nous n'avons pas à disposition certains éléments de contexte qui nous semblent importants pour pouvoir répondre, ton niveau fait partie de ces éléments.
- avoir l'impression que le demandeur a fourni un travail personnel avant de venir poster.
Si nos questions te vexent, cela peut vouloir dire que tu es susceptible, et bien soit tu le surmontes et peut-être que finalement on pourra t'aider.
Mais cela peut aussi vouloir dire que la situation n'est pas si honnête que tu le dis et que ça t'a piqué au vif.
On veut bien te laisser le bénéfice du doute, mais il faut y mettre du tiens.
yg_be t'as proposé des exercices plus simples, c'est un très bon conseil.
Supposons qu'on te demande de calculer une puissance, alors que tu n'as pas encore appris la multiplication. C'est un peu l'impression que tu donnes. Comprends tu?
Je vous explique je suis de bonne foi
J'ai suivie mes cours mais a cause de l’arrêt des classe peu de formation a été fait à distance et j'ai déjà travaillé sur le triage en python le problème je crois est la partie orienter objet !
Ça c'est nouveau est j'ai ça a faire a remettre dans mon travail et sérieusement, je ne vois pas comment le faire marcher autrement que ce que j’ai fait la. C'est pourquoi je me suis tourné vers le forum, je n'y était pas avant. Si quelqu’un repère l'erreur que j'ai fait ça aurait été utile pour moi, je ne demande pas de le faire a ma place de me diriger si quelqun le veut bien parce la je suis dans le néant avec ce problème
J'ai suivie mes cours mais a cause de l’arrêt des classe peu de formation a été fait à distance et j'ai déjà travaillé sur le triage en python le problème je crois est la partie orienter objet !
Ça c'est nouveau est j'ai ça a faire a remettre dans mon travail et sérieusement, je ne vois pas comment le faire marcher autrement que ce que j’ai fait la. C'est pourquoi je me suis tourné vers le forum, je n'y était pas avant. Si quelqu’un repère l'erreur que j'ai fait ça aurait été utile pour moi, je ne demande pas de le faire a ma place de me diriger si quelqun le veut bien parce la je suis dans le néant avec ce problème
Ok LaurieVL,
Dans ma réponse de 11h39, je t'ai quand meme donné une piste …
Dans ma réponse de 11h39, je t'ai quand meme donné une piste …
si tu as comme instruction d’appeler g.Bulle(), alors comment dois-tu déclarer Bulle? avec quels paramètres?
avant de faire des exercices complexes orientés objet, commence par des exercices beaucoup plus simples, cela va te permettre de comprendre, d'apprendre, et de progresser. commence par une classe beaucoup plus simple.
cela me semble tout de même très logique: si tu ne vois pas comment faire, commence avec des exercices plus simples.
tu ne progresseras pas si nous te donnons la solution d'un exercice.
avant de faire des exercices complexes orientés objet, commence par des exercices beaucoup plus simples, cela va te permettre de comprendre, d'apprendre, et de progresser. commence par une classe beaucoup plus simple.
cela me semble tout de même très logique: si tu ne vois pas comment faire, commence avec des exercices plus simples.
tu ne progresseras pas si nous te donnons la solution d'un exercice.
Bonjour LaurieVL,
tu ne nous a pas dit si ma réponse du 24 avril à 21h12 avait résolu ton problème ….
:-)
tu ne nous a pas dit si ma réponse du 24 avril à 21h12 avait résolu ton problème ….
:-)