Session du 14 octobre 2024 à 21h00
TOSA & Certifications
Librairie Standard & Modules
Programmation Orientée Objet (POO)
Deviens membre Premium magic_button
Cette session de mentorat est réservée aux membres Premium. Rejoignez-nous pour accéder à toutes les rediffusions des sessions de mentorat !
Premium
- check +100h de formations
- check +180 exercices de code
- check +100h de mentorats en rediffusion
- check 20 projets
- check Mentorats groupés hebdomadaires
- check Support individuel avec nos mentors
Session de mentorat TOSA
Nous allons regarder les fonctions principales de itertools et revenir sur un exercice de POO qui est tombé au TOSA.
00:00:00 :Merci à tout le monde qui vient d'être là, parce qu'on est quand même pas mal.J'aurais pu d'ailleurs enregistrer ma petite intro hors sujet, mais c'est pas grave.
00:00:14 :Du coup, c'est un mentorat TOSA et je voulais revenir sur IterTools parce que Stéphane peuttémoigner qu'il a eu IterTools au TOSA et que la question était franchement pas super cool.
00:00:35 :Je le témoigne et je m'en suis pas remis.Bon. Est-ce que tout le monde a déjà utilisé IterTools au moins une fois ou pas ?
00:00:47 :Contraint est forcé pour le compte.Bon. Honnêtement, j'en suis chargé une fois.Peut-être dans ma vie de développeur qui n'a qu'un an et demi, mais je ne suis chargé qu'une fois.
00:01:07 :Mais ça peut être pratique. Ça peut être très pratique.Alors, en fait, ça va vous permettre de bosser avec des combinaisons.Surtout pour le cas du TOSA, c'est bien de bosser avec des séquences ou des combinaisons.
00:01:24 :Et en fait, IterTools, si c'est dans le TOSA, ça veut dire que c'est inclus dans la librairie standard de Python.Vous avez IterTools et ça va vous permettre de faire plusieurs choses.
00:01:44 :Attends, j'ai un point. Je vais régler ça tout de suite ici.Je relance mes notes. Je viens de changer ma vie de PC.J'ai rien installé ici. Voilà.
00:02:04 :Et c'est bon. D'autres places.Dernier réglage.Ah, changement de compte.Ok. Je ne sais pas comment ça marche.Comment ça marche ?Je vais me débrouiller autrement. C'est pas grave.
00:02:47 :Je sais connecter mon compte Google, mais je n'y arrive pas. C'est bizarre.C'est pas grave. Je vais le mettre sur notre navigateur.Profil.Du coup, IterTools.
00:03:15 :Excusez-moi. C'est bon.C'est réglé. IterTools, ça va vous permettre de bosser avec des combinaisons, des séquences.On va s'intéresser à ce qui est tombé au Tosa.
00:03:30 :On va présenter les petites fonctions qu'il a eues et qu'il devait connaître.On va mettre un FromImport, un FromItertools.Alors.Et on montrera après l'exercice qu'il a eu, parce qu'il est facile à trouver.
00:03:50 :Merci Stéphane. T'es tombé dessus du coup en lisant la doc, j'imagine.Ça a dû sauter aux yeux.Vous avez la fonction Product qui va vous permettre de générer toutes les combinaisons possibles avec la pétition.
00:04:11 :Par exemple, ici, on va faire un printemps sur la mesure.On va l'appeler Résultat.Le clavier, excusez-moi, j'ai du mal à me faire traquer.Résultat est égal à Product.
00:04:25 :Et ici, par exemple, on va avoir A, B, C, D.Et on va mettre un Repeat à deux.Et maintenant, pour avoir un print facile et lisible, on va le mettre en liste.
00:04:41 :On va printer Résultat.Vous voyez bien mon...La console, vous l'avez bien la terminale ?La console ?Ça va.Et donc ici, je ne sais pas si je peux vous copier en mode...
00:04:59 :En gros, pour que ce soit plus visible.Sur le commentaire en dessous.En gros, le résultat qu'on a, ça donne ça en gros.Donc ici, vous avez toutes les combinaisons possibles avec répétition.
00:05:20 :Donc là, vous avez A, A, A, B, A, C, A, D, B, A, B, B.Donc là, par exemple, B, B, c'est une répétition.A, A, c'est aussi une répétition.
00:05:29 :Donc là, il vous sort vraiment toutes les combinaisons possibles.Et donc, il y a A, B, mais il y a aussi B, A.Donc là, c'est vraiment tout ce qu'il est possible d'avoir.
00:05:37 :Très important parce que, déjà, c'est bien connaître.Et au Toza, la petite question qu'ils vont vous mettre,c'est qu'ils vont vous mettre 4 fonctionset il faut relier le bon résultat avec la bonne fonction qui est utilisée.
00:05:50 :Alors, je continue.Donc là, vous avez Product.Ensuite, vous avez Permute.Comme ça, voilà.Et donc là, on va repartir.On va faire...On va repartir sur le résultat.
00:06:09 :On se regroupe.Résultat est égal à...Et donc là, on va faire un Permutation.Et on va mettre un A, B, C, D.Et ici, D.
00:06:28 :Et là, on va faire un Print ici.Et donc là, le Permutation, ce qu'il se passe,c'est que ça va générer tout ce qui est possible en arrangement là.
00:06:44 :Tout ce qui est possible, sauf qu'il n'y a pas de répétition.Vous allez voir, je vais vous copier en même temps.Si je n'ai pas un...
00:06:52 :Attendez, d'abord le...Hop.Et là, vous voyez, il n'y a pas de répétition.Deuxièmement, on n'a pas A, A.On a A, B.A, C.
00:07:00 :A, D.Et là, on n'a pas le bébé qu'on avait tout à l'heure.C'est vraiment B, A.B, C.B, D.C, A.C, B.
00:07:09 :C, D.Il n'y a pas de C, C.Voilà.OK.Je vais m'arrêter s'il y a un problème.Mais normalement, c'est bon.Jusque là, ça va.
00:07:18 :Donc, on a le produit.On a vu le produit qui génère toutes les combinaisons possiblesavec répétition.Maintenant, on a les permutations qui génèrent tous les arrangements possiblesou l'ordre.
00:07:33 :Il y a l'ordre qui compte, mais il n'y a pas de répétition.OK.Donc, on a bien le A, B, mais on n'a pas le A, A.
00:07:41 :Mais d'un côté, on a bien le B, A.Voilà.Donc, l'ordre, il compte ici.Je dis ça, c'est très important parce qu'on a le A, B et le B, Aparce que vous allez voir que dans les autres fonctions,c'est un peu différent.
00:07:53 :Ensuite, c'est le Combination qui va fonctionner un peu différemment.Donc là, j'ai son terminal.Et après, comme ça, je vais vous montrer un truc sympaderrière un petit site où j'étais amusé à l'époqueoù j'ai découvert justement l'Ether Tools.
00:08:16 :Donc, on part sur Résultats.Et là, on va avoir...Non.Je dois savoir.Égal à...Non.Voilà.Égal à Combinations.Et là, ici, on va avoir le A, B, C, D.
00:08:29 :Deux.Hop.Hop, hop.Et donc là, Combination 6, on va générer toutes les combinaisons possibles.Le A...Attendez que je retourne sur mon cours.Salut, Christophe.
00:08:53 :Est-ce qu'il est arrivé, Christophe, dans le groupe ?Christophe Rousseau.Tu es là, nickel.Salut, Christophe.Salut.Alors, j'étais sur le...Tac, la mutation, je l'ai fait.
00:09:12 :Juste, je vais vous copier en gros la sortie.Pour qu'elle soit plus simple à comprendre au fur et à mesure.Tac, tac.Et je vais mettre un petit commentaire.
00:09:23 :Hop.Hop.Donc, voilà.Et là, du coup, on était sur le Combination.Et le Combination, je disais, du coup, on va générer toutes les combinaisons possibles aussi.
00:09:34 :L'ordre ne compte pas.Et il n'y a pas de répétition.Donc, là, ici, le dernier, si je le print.Hop.Il n'y a pas de répétition.
00:09:44 :On n'a pas deux fois A.Et quand on arrive ici.Donc, on a fait A, B, A, C, A, D.On ne va pas avoir B, A.
00:09:52 :OK.Ici, l'ordre, ça ne compte pas.Voilà.Et donc, en plus, il n'y a pas de répétition.Donc, on ne va pas avoir le A, A.
00:10:00 :On ne va pas avoir le B, B.Donc, je vais vous mettre aussi mon résultat.Donc, là, c'était sur Combination.Ici, je vais le copier.
00:10:09 :Vous allez voir toutes les différences au fur et à mesure.Et vous allez voir que ça, pour le Tosa, c'est bien à connaître.Parce que la question qu'ils vous mettent, elle est un peu galère quand même.
00:10:20 :Voilà.Et ensuite, j'avais un dernier que je voulais vous montrer.Qui s'appelait...Je ne sais plus s'il était au Tosa.On verra après.Mais il existe.
00:10:30 :Combination with Replacement.Il y était.Il y était ?C'est génial.C'est génial, il y était aussi.Donc, ça, c'est comme Combination qui est au-dessus.
00:10:41 :Qui est là.Sauf qu'on va pouvoir répéter les éléments.En gros, je vais vous le faire ici.On va repartir là-dessus.Résultat est égal à Combination with Replacement.
00:11:01 :Et on va repartir avec un BCD, un BASIC.Comme ça, on verra bien la différence.Et on va le printer au fur et à mesure.
00:11:09 :Voilà.Et donc le dernier, on a bien...Ici, on a nos combinaisons.Mais on a le droit, c'est comme Combination.Sauf qu'on a le droit ici d'avoir nos répétitions.
00:11:30 :Donc là, on ne pouvait pas avoir le AA, deux fois le A.Mais ici, on a deux fois le AA.On a bien le BB.
00:11:35 :On a bien le CC.Et le DD.Voilà.Donc, si je vais le copier aussi.Comme ça, en plus, je vais le mettre dans un Repo, tout ça.
00:11:44 :Je ne sais pas si je vois si c'est bien le A.C'est le Combination.Par contre, contrairement au Product,dans le dernier, on a le AB.
00:11:55 :Mais on n'a pas le BA.Tu m'as dit quoi ?Tu disais que contrairement au Product,on avait le AA.AA, BB, CC, DD.Ouais.
00:12:09 :Dans le Combination,on reste bien sur l'idée du premier sans les remplacements.Où on a AB, mais pas BA.Là, oui.Ici, on passe directement à BB.
00:12:21 :Je vais faire un petit résumé.Je le mettrai en Repo.Mais en gros, voilà.Et j'écrirai un peu plus de choses,pour que ce soit plus compréhensible.
00:12:30 :Mais en gros, vous avez le Product, ici.Vous avez toutes les combinaisons possibles,avec répétition, ici.Voilà.Vous avez le Permutations,qui va être là, qui va...
00:12:42 :On n'aura pas les répétitions.Et ici, l'ordre compte.Parce que vous avez le AB.Et vous avez aussi le BA.On a la Combination.Ici, on va...
00:12:58 :Du coup, on n'a pas de répétition.Et du coup, l'ordre, ici, il ne compte pas.Parce qu'on a le AB, directement.Et dans celui-là, du coup,on va avoir la répétition des éléments qui est possible.
00:13:12 :On a le AB, BB, CC et DD.Voilà, en gros, pour le Combination.Et du coup, ça me fait penser.C'était Stéphane qui m'avait envoyé un message.
00:13:26 :J'avais bien rigolé.Je vais vous le montrer.Attendez, est-ce que j'y arrive ?Ah oui, il faut que je change de fenêtre.Il faut s'y faire, je vais y arriver.
00:13:39 :Tac.Donc là, si je recherche ITER Tools,je vais dans la doc de Python.Et donc, de tête, Stéphane,est-ce que tu peux me confirmerque tu as eu un exercice ?
00:13:53 :C'était exactement ça, là.C'est ça que tu m'as envoyé.C'était exactement les propositionsde gauche et de droite qui étaient proposées au Tosa.Donc, voilà.
00:14:03 :C'est assez marrant.Donc, tu as eu tout ça.Grosse inspiration et gros travail d'écriturepour les rédacteurs des questions B.Donc, voilà.Pour ceux qui veulent s'entraîner au Tosa,aussi avec ITER Tools, il y a ça.
00:14:20 :Ouais, vas-y.J'ai vu que tu avais une main levée.N'hésite pas.C'était une erreur, peut-être.Désolé.OK, non, il n'y a pas de problème.Il n'y a pas de souci.
00:14:34 :De toute façon, même si je ne vois pas forcémentqu'il y a la main levée, vous me coupez la parole.Il n'y a pas de problème.
00:14:39 :Il n'y a pas de problème.Donc, voilà.Avec ITER Tools, en fait, vous avez...Ici, l'exercice au Tosa qui est tombé,c'est exactement le même.
00:14:47 :C'est vrai que quand j'avais regardé ta correction,tes résultats, tu m'as montré ça.J'aime bien rigoler.Donc, je suis là.Vous pouvez nous entraîner, si vous voulez.
00:14:56 :Et ça me fait penser, du coup, à l'époquequand j'avais découvert ITER Tools.C'était assez rigolo.C'est un petit site gratuit.Je crois que c'est une asso qui a fait ça.
00:15:13 :Je ne dis pas de bêtises.Je ne sais pas si c'est noté.Est-ce qu'il y a un propos ?C'est open source, voilà.C'est vraiment super sympa.
00:15:22 :Et j'avais découvert là-dessus...Il y a pas mal de petits exercices.Il y en a vraiment pas mal.Je vous conseille, pour ceux qui ont déjà bien bossé Python,de faire les niveaux réalistes.
00:15:39 :C'est les plus durs.Les entraînements sont sympas,mais les niveaux réalistes sont assez rigolos.C'est pas mal d'algorithmes.Il y en a un, justement,qui m'a fait découvrir...
00:15:51 :Il est où ?C'est celui-là.ITER Tools.Par exemple, ici,il vous demandaitde renvoyer les combinaisons des parfums.Il ne fallait pas s'embêter à faireje ne sais pas combien de lignes de code.
00:16:12 :Vous envoyez ça avec Combination.Vous envoyez les dans votre liste.Vous mettez ici deux.Après, il n'y a plus qu'à faire le print.C'est tout.
00:16:21 :C'est pour ça, au début, on se diton va vérifier les combinaisons,on va partir sur de la boucle.Moi, la première fois que je l'avais fait,j'étais là-dessus à un moment,sur ce site-là.
00:16:36 :Je ne connaissais pas ITER Tools.J'étais parti sur des boucles.J'avais réussi, le résultat était là.Après, quand j'ai vu la correction,j'ai fait,ah ouais, cool.
00:16:44 :En fait, j'aurais pu faire çaen devine des codes.Donc, voilà.Est-ce que c'est bon pour vous ?Ouais.Donc, ceux qui veulent s'amuserun peu de temps en tempsavec des petits exos là-dessus,ils sont assez...
00:17:05 :Et d'ailleurs, c'est le mecqui s'est fait Open Source.C'est Julien Pallard lui-mêmeje crois qu'il l'a fait.J'ai déjà discuté avec lui.Très, très sympathique aussi.
00:17:16 :Du coup,je voulais partir sur autre chose.Tu peux mettre le lien là,le lien du...Ouais, ok.Attends.Hop.Voilà, je l'ai envoyé.Ça va, nickel.
00:17:48 :Voilà.Du coup,je voulais partir sur autre chose.Je me souviens d'un exerciceque, pareil,franchement, c'était très bien.T'es vraiment gentil avec.Que t'avais eu.
00:18:03 :Faut que je le retrouve.Alors.Tu parles du bateau, je parie.Ouais, bien vu.Alors.Bon, ça je vais l'effacer.On va partir dessus.En fait,il y avait une classe.
00:18:22 :C'est la classe...J'avais pris des noteset je m'en souviens encore.Et j'avais...Je crois que c'était...Il y avait un...Alors attendez,j'ai du mal à me faire au clavier encoremais ça va venir.
00:18:39 :Et ici,en fait, il y avait le selfet j'avais donc le bandparce qu'on a la marque.Et ici,on avaitself.brandva être égalà la marque.
00:18:52 :Tout simplement.Ok, vous allez avoiren constructeurune marque de véhicule.Il y avait la...La method stringqui était redéfinie.Et ça retournait.Je l'ai noté.
00:19:06 :Ça retournaitvéhicule...Je sais plus.Donc voilà, comme ça,véhicule de marque.Et puis là,il faut que je me souviennecomment on fait sur un Macles accolades.
00:19:19 :Ça doit être ça.Voilà.self.brandVoilà.Bon, sauf que je ne sais plus.J'ai utilisé un autre formatage.Ils ne se formattaient pas comme ça.
00:19:30 :Ils utilisaient .formatou...Mais bon, bref,peu importe.Ils retournaient çaet...Je l'ai ré-épinglédans le Discord,si tu veux.Tu as dit quoi ?
00:19:40 :Tu l'as envoyé en Discord ?Je l'ai ré-épinglédans le Discord.Dans le Discord,j'ai ré-épinglé le message.Tu m'avais renvoyé le code,si tu veux le reprendre.
00:19:47 :Ah ouais, ok.Dans le Discord,parce que je l'ai alluméen Discord.Tic-tac.Merci.Message ré-épinglé.Ouais, c'est ça.Donc on va reprendre déjà la classe.
00:20:03 :Toute la classe.Et puis comme ça,on va revoir un peu...L'annuler.Hop là.Voilà.Hop.Donc voilà.En gros,vous avezla fonction getStatus.
00:20:23 :Voilà, le formatage,c'est comme ça.La fonction getStatusqui vous retournaitici un dictionnaire.Voilà.Donc maintenant,ici,il y avait une autre classe,une autre classe,Bolt,qui était...
00:20:39 :Elle héritait de vie.Pareil,on avait notreinit.Et là,le init,je crois que tu n'allais pas le refaire,le init.Il était déjà tout fait.
00:20:54 :Ouais, il fallait vraimentjuste faire le truc.Donc là,pour ceux qui ne sont pas à l'aiseavec l'APO,est-ce que tout le mondeest topéavec la méthode Superou pasdans le...
00:21:09 :Ouais,il n'y a pas de problème,je pense.J'ai fait les mentorats dessus,mais je ne sais plussi tout le monde était là.Ouais, en général,ceux qui sont là,ils sont tous...
00:21:19 :Il n'y a aucun problème.OK.Et après,je vais retrouver l'énoncéet après,je vais vous relirel'énoncé.Et il va falloirtrouver la solution.
00:21:30 :Il y avait,c'était floatability.Ça doit être ça,float...Je ne sais plus,non,floatability.Ouais,c'est ça.C'est ça.OK,c'est nickel.Et puis là,c'est parti,on part sur un self.
00:21:46 :Floatability.C'est compliqué.Ça ne parle pas.En fait,c'est galère à écrire.Floatability.Hop.Donc là,on était là-dessus.Bon.Et en fait,maintenant,la consigne,donc,juste écrire le début.
00:22:03 :En plus,en soi,elle n'est pas...Ce n'est pas compliqué en soi,mais c'est juste que la façon dont c'est posé,c'est un peu galère.
00:22:12 :Alors,la consigne,je vais vous la lire,c'est définissez la méthode getStatusdans la classe Bot,de sorte qu'elle renvoieles données recueilliespar la méthode parent,donc,le véhicule,ici,le véhicule,et l'attribut floatabilityde l'instance Bot.
00:22:29 :Ce champ sera stockéà la cléfloatabilitydu digStatus.Donc,l'implémentation devra rester correcte,même si le contenu du digRetournerpar véhicule.getStatuschange dans le futur.
00:22:41 :Voilà.Donc,ce qu'il demande,ce n'est pas compliqué,mais je trouve qu'il...Je ne sais pas,ça peut...C'est la tournure qui est recueillie.Mais c'est vraiment tout con,je vous assure.
00:22:53 :Il suffit de manipuler un dictionnaire.Et de manière basique,je vais vous l'écrire.Je vais vous l'écrire,la consigne que vous lisezsous les yeux,sous les yeux,là.
00:23:05 :Et...Je pense que vous pouvez trouverassez facilement,au final.Enfin,facilement,mais si vous avez une idée,après,ça peut vite...Voilà.C'est Ctrl-Alt-L.
00:23:22 :Je ne sais plus sur...Non,Mac.Du coup,c'est comment...Bon,bref.Je vais faire un solding.Ce sera plus simple.Hop.Voilà.Vous avez ici la correction.
00:23:35 :Mince.Dénoncez.Merci.Voilà.Est-ce qu'il y en aqui ont des idées ?Euh...Allô ?Ouais.Ah ouais.D'abord,mettre le super.Ouais.Déjà,première chose.
00:24:04 :Ouais.Parce qu'il y a bien écrit,ici,qu'il va falloir récupérerles données de la méthode parent.Donc,OK.Pas de problème.Hop.Donc,on a biennotre superqui est ici.
00:24:20 :Maintenant,on doit définireuh...l'attributfaussibilité.Je pense qu'il doit êtreun...un argument,peut-être.C'est quoi ?Un argument,le faussibilité.Alors,alors,euh...
00:24:40 :Non,parce quec'est un attribut d'instance,en fait.Donc,tu peux le récupérerautrement,en fait.Tu peux le faire encore plus simpleen utilisant un argument.
00:24:50 :Voilà.Et en plus,l'argument.Ouais,ouais,non,bref.T'as plus simple.T'as vraiment plus simple.En fait,déjà,à ton...à ton super,on va lui être...
00:25:06 :on peut l'attribuerune variablequi,du coup,veut dire que,commegetStatusretourne en dictionnaire,ici,status,c'est en dictionnaire.Ouais.Et là,donc,dans l'énoncé,euh...
00:25:22 :ils veulentl'attribut flottabilitéd'instance bot.Donc,ce champsera stockéà la cléflottabilitédu dictstatus.Vous le dites,hein,si vous essayez,hein,vous allez voir,c'est vraiment tout con.
00:25:45 :Même moi,au début,quand j'étudiais la consigne,je me suis dit,ouais,j'ai...euh...genre,une valeurde dictionnaire,genre...Ouais,ben,ouais,ouais,c'est ça.
00:26:02 :Bon,c'est un truc comme ça,bon.Et donc,ben,tout con,en dictionnaire,c'est status.Et,du coup,en fait,euh...en fait,tu vas pouvoir te créerta clé.
00:26:17 :Ok,ouais,flottabilité,et ici,on attribue,donc,self,flottabilité.Et voilà,et en fait,c'était la solution,si je dis pas de bêtise,euh...Bien sûr,on oublie pas de retournerle statut,le dictionnaire.
00:26:37 :Et en fait,eh ben,il y avait,euh...pas grand chose à faire.Mais,vous voyez que la...Alors,donc là,c'est bien,tu vois,ça a été assez vite,parce qu'en plus,ils te...
00:26:51 :Bon,t'as le code là-haut,faut penser bien regarder icice qu'ils ont fait.Faut pas se...Faut pas se perdre,on va dire,quoi.On a aussi tendanceà chercher un truc de l'espace,alors qu'en fait,souvent,c'est simple,en fait.
00:27:05 :Ouais,ouais.Parce que moi,je les ai pas,moi,les...les...Enfin,j'ai pas la solutionaux genres d'exercices là,mais pour moi,c'est ce qu'il aurait fallu faire,quoi.
00:27:18 :Donc,pour moi,ça correspond exactement à ça,c'est vraiment,ici,le champ sera stockéà la clé de frottabilitéde X-Status.Voilà,la clé,elle est là.
00:27:29 :Et on récupère bienla valeur de frottabilité ici.Donc,pour moi,ça peut créer ça,par exemple,ou autre chose.On respecte le faitque si l'implémentationde...
00:27:39 :enfin,de GetStatus dans véhiculechange,ben,quand on récupèrele statut de bot,ben,forcément,il y aura un changement.Ouais,ouais,ouais.Donc,c'était...
00:27:53 :L'énoncé,aussi,c'est un peu compliquéde comprendre.Ouais,ben,vous...Enfin,j'ai presque enviede revenir dessus,mais l'énoncé,quand...Putain,la vache,on a déjà arrivé...
00:28:08 :Ça passe vite,une demi-heure.Si je sors de là,je vais vous...Des énoncés,il y en a des...Alors,attendez.J'en ai un sympa,d'énoncé.
00:28:18 :Euh...Si j'accède à mon compte...Hop.Euh...Hop là.Euh...Je suis où ?C'est dans...Formation,exercice.N'oubliez pas que...Surtout,pour ceux qui passaientaux A,euh...
00:28:33 :Ici.Ah,je regarde,pour en rajouter un,j'ai...J'ai...J'ai...J'ai...J'ai...J'ai...J'ai...J'ai...Ah,je regarde pour en rajouter des exercices,ici,d'ailleurs.
00:28:49 :Euh...Bon,le FizzBuzz,il n'était pas compliqué.Celui-là...Alors,celui-là,qui peut,euh...Celui-là,quand il est,euh...Ça va,il n'est pas compliqué,mais il faut bien faire attention,celui-là,de passer à l'avant,par exemple.
00:29:07 :Ils ne veulent pas,ici,la somme de tous les nombres,mais la somme du nombre d'éléments,surtout.Ce qu'il y a dans la liste.Donc,c'est un plus deux plus trois,c'est vraiment un,deux,trois,trois éléments,plus un,deux,trois,quatre,cinq,plus cinq éléments,et ainsi de suite.
00:29:26 :Donc,euh...Parce que je pense qu'on peut facilement se faire avoir.Il y a quoi d'autre ?Alors,celui-là,par contre,je...Celui dont on a discuté,avec,euh...
00:29:37 :qu'on peut faire avec des collections,une boucle...C'est avec laquelle je parle.Je ne sais plus.Je n'en suis un plus.Euh...Il faut compter le...
00:29:44 :Il faut compter les lettres,en récurrence,dans les mots.Ouais,ah ouais.Bien vu.Oh oui.Je vais le remettre,pour le remontrer.Là,avant de finir sur ça,je voulais faire un petit toursur les genres de dénoncés que vous avez.
00:29:57 :Celui-là,dénoncé,qui fait peur.Moi,perso,quand je l'ai eu,j'ai eu très peur.Mais,ça va,j'avais le patternpour remonter un graphe en tête.
00:30:08 :Donc,je l'ai réussi.J'étais tellement contentque les gars,Ouais,le counter,le counter,tu t'en souviens ?C'était quoi déjà ?Le nombre d'occurrences de chaque mot,je crois.
00:30:20 :Le nombre d'occurrencesde lettres.Je crois qu'il y avait le mot abracadabraqui apparaissait dans le truc.Ouais,alors,t'as les exercices du genre,ici,où,il a une solutionavec un counter,ici.
00:30:33 :C'est quoi déjà ?Une caractère,avec le nombre d'occurrencesde chaque mot.Ce qu'il a,c'est.Donc,ça,on pourrait très bien le faireavec une boucle.
00:30:43 :Mais,ici,avec,c'est possible d'utiliserla librairie collectionpour le faire.Mais,franchement,les exercices,là,avec le tag Toza,bon,déjà,faites un peutous les exercices.
00:30:58 :Moi,pour Doctrine,j'en ai fait,je pense,quasiment tout.Mais,celui-là,enfin,les exercices avec le tag Toza,pour ceux qui passent les Tozas,franchement,c'est des exercices que vous allez avoirdans votre collection.
00:31:11 :Moi,j'ai eu au moins deux questions,voire trois questions dessus.J'avais eu un exercice comme ça,peut-être,je ne sais plus,j'ai un doute.J'avais eu le défaut dit,sûr et certain,le défaut dit,je l'ai eu,sûr,sûr,sûr.
00:31:25 :Et,j'ai eu le,je ne sais pas comment on prononce,d'ailleurs,le dec,le que,dec,pour travailler avec les listes.Je dis déqué.Tu sais,je t'ai mis le lien de celui que je te parlaisdans le chat.
00:31:37 :Est-ce qu'il veut bien s'ouvrir ?Alors,je suis un peu en galère là,hop.Il faut vraiment que je me fasse au commandant,parce que,hop là.
00:31:46 :Ah !Ouais,ouais,ouais,non,tu sais,c'était quoi celui-là du coup ?Ouais,ouais,ouais,ouais,voilà,c'est ça que tu m'avais envoyé,j'en souviens.
00:32:04 :C'est ça.Non,genre,tu pars sur un,sur un,parfois,quoi.Ah ouais,c'est possible de faire avec des boucles,ou,ouais,donc celui-là,il y avait un,mais ma solution à marcher,non pas,attends ?
00:32:20 :Ouais,c'est bon,moi j'avais réussi à le faire avec un,un counter de,j'étais pas embêté,j'avais utilisé collection là-dessus.J'avais utilisé collection.Donc,ouais,après le module collection,ouais,il y a un article là-dessus.
00:32:32 :Je pense que,je l'ai déjà filé plein de foispendant les mentoras.Si jamais vous voulez que je vous le renvoie,y a pas de problème.
00:32:37 :Euh,donc,string collection,ouais,celui-là,ça,je vous remets le lien pour ceux qui l'ont pas,mais vraiment,enfin,que là,le Toza,parce que j'ai le Toza,mais en fait,moi,perso,le jour où j'ai essayé de passer le Toza,en fait,j'ai appris la blinde de trucs sur Python
00:32:55 :que je ne savais pas,au niveau des,des librairies,même des concepts,en fait,où on pense,on dirait,on est OP,et en fait,il y a plein de petites subtilités,euh,et en fait,la prochaine fois,je pense sur un casoù vous pouvez avoirun,une fonction
00:33:12 :avec,euh,je crois que ça peut tomber au Toza,celle-ci,avec,euh,en argument,par défaut,il y a une liste,sauf que du coup,la liste,en fait,dès que vous allez appeler la fonction,la liste,elle,elle sera toujours là,ce sera toujours la liste qui sera utilisée,
00:33:29 :en fait.Euh,je vous prépare,je prépare un truc là-dessus,euh,parce que c'est un petit peu piège,d'avoir un,un comportement que j'ai pas prévu,vous dites,mais je comprends pas pourquoi j'ai ma,ma liste,j'ai l'impression qu'elle se sauvegardeentre chaque appel,c'est bizarre,mais en fait,
00:33:44 :non,c'est normal.Donc,voilà.Euh,bah voilà,bah j'espère que la session vous a plu,en tout cas.On fait un petit tour d'EtherTools.C'est sympa.
00:33:54 :C'est sympa.Je vais pas dire que ça m'a rappelé que des bons souvenirs.Ouais,t'inquiètes,c'est pas grave,c'est pas grave,c'est pas grave,c'est pas grave,t'inquiètes,maintenant tu vas être O.P.
00:34:07 :Ah non,Christophe,t'as une erreur,si tu parles,je ne t'entends pas en tout cas.Euh,non,je ne parlais pas.Non,y avait,y a Jean,euh,ouais,c'est Christophe aussi.
00:34:21 :Ah non,mauvaise manique.Ok.Ok,ok.Non,bah écoutez,s'il y a pas de,de questions,si tout est ok,pas de problème,et j'espère que du coup,vous aimez bien EtherTools maintenant.
00:34:34 :Je ne sais pas si vous serez amenés à l'utiliser un jour,mais,mais,voilà,c'est bien qu'on aide quand même,parce que ça peut,j'ai déjà eu des cas où,j'ai eu des idées de l'utiliserdans des projets de Django,moi,pour,pour mon jeu de rôle,par exemple,
00:34:47 :ou,j'ai déjà eu des petites idées comme ça,mais,ça peut servir en mode pratique,regarde le script que je t'ai envoyéen début de semaine.
00:34:53 :Ouais,ouais,ouais,ouais,ouais,c'est vrai,ouais,je ne sais pas si t'as gardé,faudrait que tu me présentes ton script,la prochaine fois,voici là.
00:35:04 :Euh,oui,en fait,c'est juste,bon,j'avais une petite question,là,j'avais même pas réalisé ça sur,euh,le salon,Mantora,en fait,je,je,je bosse sur un petit projet,là,mais,je dois me connecter à une base de données Oracle,une base de données,ouais,Oracle,Oracle,
00:35:26 :la base de données existante,oui,elle est existante,euh,en fait,je dois juste me connecteret faire quelques requêtes,ouais,euh,mais j'utilise,euh,j'utilise,euh,comment dirais-je,CX Oracle,c'est quoi,t'as dit ?
00:35:43 :j'utilise CX Oracle,euh,pour,pour,pour,pour accéder à la base de données,ouais,j'avais dit,d'accord,mais,quand j'essaie maintenant de,de l'y aller à ma bosse,je,je,je reçois toujours que le client,euh,Oracle n'est pas installé,machin,tout ça,mais je l'ai installé,j'ai vérifié,
00:36:04 :mais toujours,je reçois la même erreur,c'est pas si,tu l'as une fois utilisé,non,CX Oracle,ouais,ouais,c'est CX Oracle,ouais,ouais,et quand tu l'as,et,bon,pourtant,moi j'imagine,ton environnement virtuel,il n'y a pas de problème,il est bien sourcé,non,non,il n'y a pas de problème,
00:36:26 :il n'y a pas de problème,ouais,ouais,j'imagine,les dernières mises à jour,sont de,2021,ça commence à,oui,il y a une mise à jour,à partir de 3.6,
00:36:41 :je crois,Python 3.6,ouais,parce que,avec,avant,jusqu'à 3.6,il y a,tu dois installer le CX Oracle,et,je pense,Django,DB,un truc comme ça,ouais,et maintenant,tu utilises le CX Oracle,ouais,et maintenant,tu,tu installes ton,point Oracle,d'accord,ouais,et c'est le point Oracle là,
00:37:06 :que tu dois mettre dans,soit Python Windows,tu mets dans les,les environnements,les,les,comment,les verbes d'environnement,je veux dire,ouais,tu comptes sur,le,le DLL du,du,du,libéré Oracle,ouais,tu mets dans ton settings,maintenant,les configurations de ta base zonée,et puis tu,
00:37:27 :tu appelles la base zonée,ok,non,alors honnêtement,je n'ai jamais essayé,mais,donc c'est bien,CX Oracle que tu utilises,ouais,ouais,ouais,c'est lui,c'est lui,ouais,alors,ce qui peut être intéressant,c'est d'aller voir,bon,je vois qu'il y a des branches,je pense qu'ils ont l'air de bosser dessus,
00:37:47 :dans les problèmes ici,est-ce que,tu vois un truc qui pourrait peut-être,Ok,mais ici,je n'ai pas entendu,normalement,je ne sais pas,mais dans le lien,je vais,je vais checker,petit à petit voir,ouais,regarde un petit peu,je t'envoie le lien,ouais,mais j'aime bien,
00:38:05 :alors,si je peux me permettre,ce que je vois sur,le repository,il y a,ils ont une page la,ils,ils,ils,ils,ils ont un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,un,
00:38:39 :un,un,un,un.Ouais,alors,tu vois,tu vois,ouais,tu vois,tu regardes qui c'est,tu peux,tu peux assez les retrouver,je ne sais plus,je ne sais plus où c'est d'ailleurs,tu as le,ouais,ouais,il est là,je ne l'avais pas vu,et par exemple,
00:39:00 :hein ?Ok,je pense que c'était moi.Ouais,ouais,par exemple,pour trouver les personnes,et moi,je sais qu'il n'y a pas longtemps,pour un projet en plus,Django,qui doit être en prod pour une entreprise,on avait un doute,je me suis dit,il y a une livrairie,
00:39:15 :et j'ai contacté le mec,il m'a dit,il y a un problème,même si elle n'est plus trop maintenue,tu peux l'utiliser,elle fonctionne bien,et puis,si tu as un problème,tu reviens vers moi,et je la mets à jour,enfin,toi,tu peux parler avec les gens,
00:39:28 :franchement,ça arrive souvent que les gens soient ouvertssur les,sur les,les repos comme ça,tu peux discuter avec eux,quoi,il n'y a pas de problème.
00:39:36 :D'accord,d'accord,ça marche.Donc lui,c'est un membre de Oracle,ouais,tu as vu,ouais,c'est ça.Ouais.Tu vois,tu vois le culot,tu,ouais,et puis,et puis,voilà,ça marche.
Aucune occurrence trouvée pour « ».
00:00:14
Introduction et contexte du mentorat
00:03:14
Utilisation pratique d'IterTools et exemples
00:05:37
Présentation des fonctions principales d'IterTools
00:13:49
L'exercice du TOSA avec itertools
00:15:10
Exercices pratiques avec IterTools
00:17:19
Présentation d'un exercice sur l'orienté objet
00:31:54
Exercice de comptage de lettres avec collections
00:35:45
Question ouverte sur la connexion à Oracle