Session du 27 février 2025 à 21h00
Structures de Données
TOSA & Certifications
Développement Web & Frameworks
Librairie Standard & Modules
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
Session de mentorat TOSA où nous allons repasser sur des exercices TOSA. On v'a m'aime s'amuser avec l'api Chuck Norris IO pour pratiquer urllib, datetime, json et pprint.
00:00:00 :C'est parti.Bon, du coup, on va continuer sur la lancée des questions TOSA et franchement avec...Ah, c'est bon, il est là.Tac.Ça se connecte.
00:00:16 :Voilà.Salut, salut, salut.Du coup, je disais, on va continuer sur la lancée TOSA pour ce mentorat-là.Désolé, j'ai la voix...Je suis malade depuis plusieurs jours, j'ai la voix un peu enrayée.
00:00:36 :Avec tout ce qu'il y a actuellement sur le site,donc là avec tous les exercices TOSA que j'ai rajoutés il n'y a pas longtemps,qu'il y en avait déjà avant déjà,avec les quiz, les tests de compétences,plus tous les mentorats spécifiques TOSA,franchement là, vous êtes blindés pour y aller.
00:00:58 :Vous avez déjà vu pas mal de cas.Et pour ceux qui ne passent pas le TOSA, c'est toujours intéressantparce qu'on va voir des choses vraiment de base en plus.
00:01:06 :Et des fois, certaines choses un peu plus avancées.Qu'est-ce que j'allais dire ?Donc voilà, là, j'y sais que tout ce qu'on a vu, normalement, t'inquiète pas,tu vas être bien prêt, tu vas pouvoir passer à une évaluation.
00:01:17 :A mon avis, ça ne peut que aller.D'accord, d'accord.Tout se passe et bien géré, il n'y a aucun problème.Alors, il y a un petit fichier point paille.
00:01:27 :Alors, attendez, je vais vous partager mon écran.Je vais grossir mon écran surtout.Est-ce que tout le monde voit ?Oui, oui.Oui, je m'éclaire.
00:01:42 :Ok, super.Alors, par quoi je commence ?Si vous voulez parler, coupez-moi la parole, il n'y a pas de problème.Est-ce qu'on commence fort ou pas ?
00:01:56 :Non, allez.On va commencer par le dernier.Il n'est pas si fort que ça.C'est bon.Donc ça, je vous laisse lire la question.Et dites-moi ce que vous en pensez du coup.
00:02:18 :Alors, attendez, le code de la ligne 10 c'est faux parce que ce n'est pas la ligne 10.Je ne sais pas si tout le monde sait si tu peux zoomer si c'est fait Gabi.
00:02:30 :Encore ?Oui.D'accord, c'est bon.Alors, attendez, parce que ce n'est pas la ligne 10.Je vais regarder comment ils avaient fait eux exactement cet exercice-là.
00:02:42 :J'avais copié tel quel, je suis bête.Est-ce qu'il y avait une subtilité en plus ? Je ne sais plus.C'est le dernier que j'ai rajouté dans mes notes.
00:02:51 :J'espère que je n'ai rien oublié sur celui-là.Je l'ai vu ici, je crois.Ok.Voilà, c'est ça.Et eux, qu'est-ce qu'ils disaient ?Alors, mince.
00:03:13 :Je retourne exactement sur la question.Je vous laisse la lire en attendant quand même.De toute façon, je regarde juste si je n'ai pas oublié une partie de la question.
00:03:20 :Non, c'est bon.Ok.En gros, c'est la ligne 24, c'est ça.Il n'y avait pas de petite blague.Ok, c'est bon.Ok.Et je n'ai rien oublié dans cette question-là ?
00:03:41 :Ok, c'est bon, j'ai les bonnes réponses.C'est bon.Est-ce qu'il y en a qu'on a des idées ?Ou pas ?Personnellement, je pense que c'estsuper.mou.
00:03:59 :Ok.C'est celle-là.Oui.Il y en a peut-être plusieurs possibles.Ok.Pour l'instant, je n'ai pas une idée sur les autres.En fait, c'est une chose qu'on ne fait pasque je pense que les anciens saventparce que c'est hérité de Python 2.
00:04:27 :Ok.Je dirais la ligne 7 aussi.Ok.C'est pour ça que je suis content qu'on le voit celui-là.Est-ce qu'il y en a d'autres qui veulentdonner une idée ?
00:04:44 :Morawak préfère prendre les bases.Je comprends si ça te paraît.Il y avait conflit avec le self.Parce que le self,ça représente l'instance.Je me demande si ce n'est pas la 5.
00:05:03 :Non.Ok.Ici, la façon la plus modernequ'on a de le faire,c'est les réponses que vous avez données.Là, on peut utiliser la méthodepour surcharger la classe.
00:05:24 :Comme ça, on va arrêter de ce que faitle code de la classe par an.Par contre,c'est hérité de Python 2,il est possible de spécifierla classe et l'instance.
00:05:42 :D'accord.C'est valable.On peut très bien dire ici,appeler notre super dog,dog,self,et là, on va mettre un move.Là, imaginez que j'ai mon chien,dog,la classe dog, c'est ça.
00:06:12 :C'est printé déjà ?Oui.Ah oui, je suis bête.On va appeler le name.On va l'appeler comment ?Mince.C'est au-dessus.En plus, c'est vraiment roulé chez moi, c'est chiant.
00:06:36 :Voilà, pogo is moving,donc on a bien appelé le is moving,et le ouf qui est dans la classe enfant.Moi, j'avoue que je ne le fais jamais.
00:06:48 :C'est la plus récente, je ne m'embête pas.Ça marche très bien aussi, ok ?Ok.Et je ne pense pas, si j'ai déjà vu une foisquelqu'un qui avait justement appelé la classe et l'instance,mais ça, vous pourrez peut-être le voir dans les vieux codes,je ne sais pas, peut-être, mais en tout cas,
00:07:09 :ils vous posent la question.C'est un petit coup à se faire avoir.J'ai eu un gros, gros doute.Donc voilà.C'est bon pour tout le monde, du coup ?
00:07:24 :Dites-moi.Oui ? Ok.Tac, c'est bon.Ok, donc voilà, c'est sympa, vous pouvez voir tout ça.Attends, s'il te plaît, là, je travaille.Excusez-moi.Et toi, je sais que tu n'as pas encore vu, du coup, tout ce qui était PO.
00:07:45 :Je ne sais pas si tu m'entends.Je sais que ton son est déconné tout à l'heure.Ou si tu essaies de me parler.Mais ce n'est pas grave, on le verra après.
00:07:57 :Le prochain.Donc là, on a vu.Il y a quelqu'un qui arrive.Est-ce qu'il se connecte ?On va lui faire le test.Rao qui déconne son...
00:08:15 :Salut.Est-ce que tu m'entends ?Tu m'entends bien ?Ok, on a commencé tard.Donc on est sur le premier exercice, là encore, on vient de le terminer.
00:08:30 :Mais juste, du coup, tu as l'honneur de voir ce que t'aurais répondu toi.Pardon.Laisse lire rapidement.Regardez le code.On peut remplacer le code en ligne 24 pour éviter les répétitions.
00:08:45 :Ligne 24.Ça paraît tout con, mais il y a un petit fièvre.En gros, il y a plusieurs réponses possibles.Ouais.Le 2.Là aussi.
00:09:09 :Il y en a plusieurs.C'est ça qui est bizarre.C'est bizarre qu'il y ait plusieurs réponses possibles.En fait, oui.Je crois que Thibault en parle à un informationnaire à un moment donné.
00:09:24 :En fait, il y a une méthode qui est héritée de Python 2.Ah.Ouais.Bon, je te le montre parce qu'on ne peut pas le deviner.
00:09:36 :Donc là, le move, je suis d'accord, c'est évidemment bon.Mais ça, c'est possible aussi.Là, c'est l'instance.Je me posais la question.Si on ne met pas un rond, c'est que ce n'est pas obligatoire.
00:09:51 :Non, mais en fait, tu pourrais mettre soit ça fonctionne pareil.Remettre les deux, d'accord.La petite blagounette, si tu aimes bien faire des petites questions comme ça.
00:10:01 :La semaine dernière, je crois qu'on avait vu une question sur Random.Je crois que c'est la semaine dernière.Et bon, on va avoir une deuxième question sur Random.
00:10:12 :Ça, je n'aime pas ce genre de questions-là en plus.Attendez.Ça, je me rappelle.Ok.Dites-moi.Le 4.Tu en as quel?Le 4.Ok.
00:10:43 :Qui d'autre?Ouais, c'est ça.Par défaut, c'est ça, ouais.Ok.Est-ce qu'il y en a d'autres?Je dirais la même chose.Tu as dit quoi?
00:10:51 :Je dirais la même chose.Ok.Bon, ok.Je pense qu'à Raboix, si tu as fait la formation,tu vas l'avoir d'un peu longtemps.Tu l'as déjà vue, celle-là, sur ce module-là.
00:11:07 :Du coup, effectivement, c'est celle-là.C'est pouvoir avoir un flotant aléatoire entre 0 et 1.C'est Random contre Random.Mais ils vous mettent des petites blagounettes encore en plus à côtépour vous inciter à l'erreur.
00:11:22 :En gros, ici, le RandRange, il est où?Celui-là, du coup, ça va toujours donner 0.Car en fait, le 1 va être exclu.Si je dis pas de conneries, c'est ça.
00:11:34 :Un RandRange, ça exclut.C'est ça.Ouais, c'est ce qu'il m'a dit.Il exclut.Le RandRange, ici, ce n'est pas valide.Et le Random contre Random, il n'est pas valide.
00:11:45 :Ok.Bon, ça va, c'était pas trop...Celle-là, c'est possible d'avoir des points.Je crois que j'ai dû la voir à l'éval et à l'assertif, celle-là.
00:11:54 :J'aime bien la mettre, j'ai l'impression.Voilà.Il y en a une autre.Celle-là, je pense qu'on va la garder à la fin.Celle-là.Alors, attendez.
00:12:06 :Je ne sais pas si ceux qui ont fait l'éval l'ont déjà eue.Je vous laisse la lire.Calme.Juste, je vous dis, celle-là, je l'ai eue au Tosa.
00:12:24 :Je l'ai résolue, je crois, en une seule ligne.Elle est toute conne.Je vous laisse vous lancer.Je vous laisse vous lancer.Je vais vous montrer une façon aussi que j'ai vu qui a été faite.
00:13:08 :Ce n'était pas bête.Je vais la résoudre.C'est bon pour tout le monde ou pas ?Vous me dites un. Je peux descendre ?Ok.
00:13:28 :Est-ce que vous avez une petite idée de comment on peut faire ça ?Ou pas du tout ?Déjà, on crée une fonction qui renverra...
00:13:46 :Si c'est un nombre inconnu, on va retourner anonymous.S'il n'y a pas la clé, en fait.Donc il faut créer une fonction qui sera utilisée par défaut dict.
00:13:58 :Il faut qu'on crée justement un défaut dict.En parlant de défaut dict, tu mets lambda qui retourne anonymous ?Oui.Il n'y a pas besoin de la fonction, du coup.
00:14:13 :Je n'ai pas trop le réflexe des lambdas, moi.Non.Oui.Non, attends.Excusez-moi.Donc défaut dict.Et de quoi à l'intérieur ?Tu mets lambda.
00:14:29 :Et le string anonymous.Ok.C'est bon.Voilà.Donc celui-là, en une ligne, il peut être résolu assez facilement.Ok.J'ai vu une façon, quelqu'un qui...
00:14:43 :Sans lambda, mais qui marche très très bien aussi.Qu'est-ce qu'il avait fait, déjà ?Il m'avait fait une fonction intermédiaire.Anonymous.Au lieu de faire une lambda, il avait fait un truc comme ça.
00:14:57 :Il avait fait un truc.Anonymous, comme ça.Et ici, il m'avait fait son défaut dict.Et dedans, tu mets anonymous.C'est ce que je pensais au départ, en fait.
00:15:10 :La fonction, ça marche aussi.Il n'y a pas de connerie là.C'est ça.Après, ça marche très bien.Ça fait la même chose.Oui, pareil.
00:15:19 :De toute façon, là aussi, c'est clair.Donc voilà, le petit défaut dict qui tombe.C'est pour ça que je dis qu'à chaque fois, il y a au moins...
00:15:27 :Je ne sais pas.À chaque fois, j'ai eu deux ou trois questions différentes dessus.Que ce soit les plus assertifs.Mais vraiment, je ne sais pas ce qu'ils ont avec ce module-là,mais il tombe très souvent.
00:15:38 :Ok, pour le défaut dict.Alors celui-là...Allez, vas-y.On va s'amuser avec ça.Je ne sais pas si vous l'avez vu, celui-là.Celui-là, vous l'avez déjà vu ?
00:15:57 :Moi, je l'ai eu, celle-là, à l'Eval.Il me semble.Un ou alors, ce n'était pas un exercice ?Je l'ai vu à l'Eval.Attends, je vais regarder.
00:16:05 :Je suis curieux.Moi, je l'ai vu.En tout cas, je l'ai déjà vu, ça.Je vais aller voir tes suivis.Ça, c'est Thomas.Tu l'as vu.
00:16:14 :Je vous laisse la lire.Moi, je l'avais eu.C'est sûr que je m'en souviens.Je l'avais eu.En tout cas, je le connais, celui-là.On l'a fait il n'y a pas longtemps, mais...
00:16:24 :Aurélie, alors est-ce que tu l'as eu, celle-là ?Je te regarde en même temps, c'est marrant.Vous pouvez y avoir plusieurs réponses.Oui, il y a...
00:16:37 :Moi, j'ai marqué toutes les affirmations.La ligne 8, je pense que ça fonctionne,parce que séparateur, c'est étoile.Donc, hop là.Là.Oui, je pense que ça fonctionne,parce que séparateur, c'est étoile.
00:16:54 :Oui.Donc, ça fait plus un étoile, le moins,puis après les trois étoiles.Oui, c'est ça.Donc, tu as plus étoile, moins étoile,moins étoile, étoile, étoile.
00:17:15 :Voilà, c'est ça.Donc, la ligne 8, je pense que ça fonctionne,alors après...Je vois la 1, la 3.Ça me fait question des fois, quand même.
00:17:30 :Je vous laisse choisir.Sinon, je pense que la deuxièmepourrait passer aussi.Oui, celle-là, elle passe la boucle,parce qu'en fait, tu fais plus étoile,moins étoile, étoile, étoile.
00:17:57 :La dernière, elle passe aussi.Oui.La dernière, elle nous fait plus étoile,moins étoile, étoile, étoile, exactement.Et celle-là aussi.Il n'y a que celle-là qui n'est pas bonne.
00:18:08 :Il n'y a que celle-là qui ne passe pas,parce que c'est en arrêt.Donc, ça ne pointera pas ce qu'il faut.Parce que c'est une liste, du coup,elle ne passe pas.
00:18:16 :Bon, celle-là, c'est la moche, je me souviens.C'est la première que j'avais éliminée.Je pense que ça, c'est mort.Là où j'avais eu un doute,je me souviens, c'était ici.
00:18:22 :Est-ce que je dis pourquoiils ont mis une boucle ?Est-ce qu'il s'est fait exprès ?Tu regardes, en fait, plus étoile,moins étoile, étoile, étoile.
00:18:31 :Bon, ok, ça passe.Ça va sur celle-là, du coup ?Oui.Je crois que je m'étais trompéesur la 2, justement.Celle-là ?Oui.Tac.
00:18:46 :Ok.Est-ce que je repars sur le petit ?Non, ça, ce n'est pas...Alors.J'avais fait...J'avais fait, avant Noël,un petit mentorat sur...On avait créé une petite applicationde dernier film à l'afficheux cinéma.
00:19:06 :Oui.Je me souviens.Avec Extreme Lead.Avec Extreme Lead, oui.Oui.Et...On ne va pas refaire exactement pareil,mais pour ceux qui n'étaient pas là,on va bosser, du coup,on va regarder,on va utiliser une, deux, trois,quatre librairies différentes, standards,et on va utiliser une super API.
00:19:31 :Cette API.L'API de Chuck Norris.Ça vous va ou pas ?Oui.Ok.On va prendre l'API de Chuck Norris.Je vous envoie le lien, si vous voulez...
00:19:43 :Hop là.Vas-y, un extrait.Pour ton micro.Tac.Alors.Excusez-moi, j'ai la gorge.Donc.Alors, on va rester basique.Ici, l'API de Chuck Norris,ça vous permet en fait de...
00:20:04 :Il y a un endpoint qui est très simple,qui vous permet d'avoir une blague aléatoirepar rapport à Chuck Norris, en gros.Ok.Et l'idée ici,c'est de faire comme on avait fait un peu à Noël,c'est de réutiliser...
00:20:20 :Comment ça s'appelle ?URLlib.Est-ce qu'il y en a qui connaissent bien URLlib ou pas ?Non, je ne l'utilise pas.Ok.Elle peut tomber au Tosa.
00:20:32 :Ah oui.Alors, elle peut tomber au Tosa,mais la seule question que je vais vous passer dessus,elle n'était pas très compliquée,c'était du genre...
00:20:40 :Je ne sais plus, c'était comment faire des requêtesou en Python,enfin un truc dans le genre,un truc vraiment basique.Le lien, on va se le copier.
00:20:50 :C'était plus une question de culture générale Pythonplutôt qu'une question de code pur.C'est ça ?Oui, carrément.Elle n'était vraiment pas stressante du tout.
00:21:02 :C'était une question de culture.J'ai vu un mentorat de toi dessus,mais je l'ai vu il y a deux jours.Oui.Alors là, c'est plus juste pour le fun.
00:21:12 :On va utiliser URLlib pour aller chercher un...Comment dire ?Un JSON.Et on va juste voir un peu,pour manipuler les données,ce qu'on va utiliser DateTime avec.
00:21:23 :Mais DateTime,parce qu'au Tosa, il y a un exercice,je sais qu'ils vous font aller chercher...Il me semble qu'il y en a unqui vous font aller chercher une date dans un dictionnaire.
00:21:35 :Sauf qu'à la base,c'est une chaîne de caractèresqui contient un dictionnaire, entre guillemets.Et c'est le JSONString, en fait.Et le but, c'est de réussir à l'importer en objet de Pythonet d'aller modifier une date qui est dedans.
00:21:51 :Donc voilà.C'est vraiment là pour revoir un peu URLlib rapidement.Pour ceux qui veulent le voir,cet exercice, d'ailleurs,ça fait partie des deux exercices gratuitsquand tu fais l'event gratuite.
00:22:04 :URLlib ?Oui.Non, le coût de la date.Ah oui, d'accord.Je ne savais pas, tu vois.Je peux aller voir l'exercice gratos.C'est toujours les mêmes.
00:22:15 :Oui, ils ne changent pas d'encontre.Du coup, est-ce que vous savez ?On ne va pas importer URLlib direct.Quand vous importez URLlib comme ça,pour faire vos requêtes,vous importez URLlib.request
00:22:31 :et on importe.Est-ce qu'il y en a qui savent ?Non.Non.OK.Hop là.Je ne sais pas ce que je voulais faire.Ce que je voulais faire, c'est ça.
00:22:47 :Et c'est ça.Donc, on va utiliser du coup l'atlas requestet on va utiliser URLopen.Alors, je ne sais pas s'il y a des questions plus pousséesqui peuvent tomber sur...
00:22:58 :Parce que forcément, je n'ai pas tout vu en question.Sur URLlib,mais je sais que ça, c'est vachement utilisé.Donc, c'est bien de savoir.Et en fait, quand vous allez faire votre requêteavec URLlib,donc là, on va créer une variable.
00:23:12 :On va ici préparer notre requête.OK.Dedans, on va lui envoyer notre...Ah là là !J'aurais dû la mettre dans une variable,ça aurait été aussi bien d'ailleurs.
00:23:27 :Ce n'est pas grave.On va aller lui mettre notre URL checknerieset il faut penser à envoyer des headers.Parce que si on fait ça,ah oui, parce que je n'ai pas encore fait mon open.
00:23:45 :On ne va pas mettre des headers maintenant.On va continuer.Donc OK.Donc là, on a notre requête.Ensuite, c'est icique vous pouvez utiliser un contact manageravec URLopen.
00:23:57 :Et dedans, vous allez envoyer votre requêteet après, on va le mettre à l'air.Et du coup, ici,on peut aller essayer de chercher les donnéesen faisant...
00:24:08 :On va utiliser une variable intermédiaire.On va aller lire ce qu'il y a dans notre requête.On va lire ça.Alors attendez.J'ai ma fille qui pleure.
00:24:22 :Désolé.Excusez-moi.Donc je disais,on va essayer de lire ce qu'il y a dedans.Et il faut aller penser aussi à décoder.Sinon, avec Read, vous allez avoir des bytes.
00:24:42 :Et en décodant, vous allez le retournersous forme de chaîne de caractère,si je ne dis pas de bêtises.Ça doit être ça.Juste une chose.
00:24:51 :Si vous faites ça,vous risquez d'avoir un petit problème, normalement.Voilà.Ici, vous voyez l'erreur.Ça vous met...En gros, vous n'avez pas le droit d'accéder.
00:25:03 :Vous avez une erreur 403.Il y a des API, je crois,ça ne pourrait pas être assez de faire comme on fait.J'ai eu la petite blague quand je l'ai fait.
00:25:12 :Mais en fait, ce qu'ils aiment bien avoir, les API, souvent,c'est un peu, comment dire,peut-être pas une carte d'identité,mais ils aiment bien savoir qui vous êtes.
00:25:20 :Alors, il faut penser, ici, à envoyer dans les headers.Comme ça.Donc c'est sous forme d'un dictionnaire.C'est ce qu'ils appellent le user agent, ici.
00:25:31 :Et puis, en gros, vous allez dire qui vous êtes.Donc, je ne sais pas,je vais dire que je suis un script Python.Après, vous pouvez dire que vous êtes chez PuMosia,quelque chose, peu importe.
00:25:39 :Donc, moi, je dis que je suis un script Python.Voilà.Je mets un script, par exemple.Et là, normalement, j'ai plus d'erreurs.OK ?Est-ce que ça, tout le monde le savait ?
00:25:51 :Non, pas du tout.Non, pas du tout.OK.Donc, il y a des API comme ça.Je suis d'accord, elle est un peu bidon, l'API.
00:25:58 :Les mecs, ils ont fait ça.C'est une blagounette.Mais il faut quand même penser à envoyer un headerset en disant, attention, voilà, qui je suis.
00:26:06 :Donc, moi, aujourd'hui, je suis un script Python 3.12.Voilà.Du coup, là où je voulais en venir,on va faire un test.On va printer le type de data.
00:26:24 :OK ?Donc, là, on est sous forme de chaîne de caractère, d'accord ?Ici, vous faites un décode.Je ne dis pas de conneries, c'est en bytes.
00:26:35 :J'ai un 12, je ne suis pas sûr de moi du tout.C'est ça.Vous êtes en bytes, ici.Alors, en soi, ce qu'on va faire,on n'est pas obligé d'utiliser des codes,mais moi, je préfère ici partir directement sur une chaîne de caractère.
00:26:53 :Voilà.Donc, je disais ici,on va les transformer en JSON, OK ?Alors, est-ce que, du coup, là,vous avez une idée de comment on va transformer ça en JSON ?
00:27:08 :Excusez-moi, en dictionnaire, je veux dire.On va faire, on va importer JSON.On va faire un JSON.loads.Ah, tu ne t'es pas fait avoir.OK.
00:27:25 :Tu prends un S.Ouais, un S, là.Un load, ouais.Et l'autre string, en fait, ça fait l'autre string, finalement.C'est ça.Parce que, au Toza, vous avez un exercice, ça résout comme ça.
00:27:38 :Et, en fait, il vous envoie une chaîne de caractère, en fait,mais avec une JSON string, quoi.Donc, ceux qui cherchent à faire ça avec l'autre, ça ne marche pas.
00:27:49 :Donc, quoi, c'est bien loads.Donc, loads, quand vous avez une chaîne de caractère,et loads, c'est quand vous avez un fichier, quoi.Un fichier JSON.
00:28:00 :Donc, ça, pas de problème.OK.Alors, il y a une autre question aussi, je crois, sur un module.Pour ça, j'essaie de penser à ce que je vais utiliser en même temps dessus.
00:28:12 :Par exemple, ici, je vais faire un print de mes JSON data.Hop.OK.Voilà.Donc, là, j'ai mes data.Vous êtes d'accord avec moi, ce n'est pas super bien présenté, là.
00:28:28 :Est-ce que vous connaissez un module qui peut améliorer ça ?Pprint.Ouais.OK.From.Donc, ça, c'est bien.Hop.Import Pprint.Prettyprint.Hop.Et voilà.
00:28:48 :C'est déjà plus sympa.Vincanbi.OK.C'est un dérable, là, excusez-moi.OK.Du coup, on a utilisé Pprint.Qu'est-ce que je voulais vous faire faire après ?
00:29:05 :OK.Donc, là, je vais vous laisser le truc sous les yeux.Une question que je pense que vous pouvez avoir.Je ne sais plus dans l'exercice ce qu'il demande exactement.
00:29:14 :Est-ce que vous savez comment aller récupérer, du coup,la date de mise à jour ici ?Dated.Il faut le passer en clé.Clé update.
00:29:29 :Clé d'optionneur.On entend du mot update.OK.Donc, Alizandata.Alizandata.Accroché.OK.Voilà, on passe la clé.Update.Ça s'appelle Update.OK.Donc, là, il n'y a pas de problème.
00:29:49 :On fait un petit vérif, on fait une mesure.Je l'ai bien en dessous ici.Là.OK.Alors, il y a une question, Autosa.Je voulais venir à ça.
00:30:01 :Donc, là, vous avez récupéré votre date.Et, je ne sais pas, on veut dire, par exemple,la date, on veut qu'elle prenne J plus 1.
00:30:15 :Alors, on utilise TimeDelta.OK.Vas-y, fais-moi l'import.From DateTime, import TimeDelta.TimeDelta.Ouais.Je viens de penser à un truc.Il faut penser au fait que tu vas avoir besoinde DateTime aussi.
00:30:46 :Ah, donc, voilà, on importe tout, alors, du coup.Bon, quoi que tu pourras faire sans ça, tout simplement.Oui, d'accord.OK, ça va.Oui, je suis bête.
00:30:55 :En fait, DateTime, moi, je n'aime pas faire des imports.Ouais, de tout, parce que c'est un gros module, en fait.Ouais, moi, j'aime bien partir de DateTime.
00:31:02 :Après, comme ça, je me dis dans la tête, allez, DateTime, DateTime,ce genre de choses-là.OK.Donc, là, par contre, il faut penser à convertir, du coup,notre date en de DateTime.
00:31:20 :Oui.En de DateTime, OK ?C'est…Et ça, ils vous le font faire.Ça, c'est…Autrement dit, il y a une question vraiment dans le genre.
00:31:28 :C'est pour ça que vous vous embêtez avec DateTime.Je sais qu'en général, c'est assez chiant, DateTime,donc pas souvent.Il y a une fonction.Je vous le dis, il y a une fonction qui est très pratique.
00:31:40 :Oui, oui, oui, je l'ai oublié.Donc, quoi, tu vois, il y a de la perte.Ah, t'inquiète.Non, mais c'est sûr.DateFromISO.Ouais, en fait, c'est ça.
00:31:53 :Ils vous donnent la date, en fait, qui est en format ISO.Du coup, vous pouvez aller la porter directement en format ISO.Ah, d'accord, oui.
00:32:04 :Donc là, je ne sais pas, update, on va écraser un peu notre variable.Ce n'est pas grave.Ce n'est pas très propre, ce que je fais là, mais…Donc, en fait…Alors, je vous laisse me dire.
00:32:17 :Je crois que c'est PrintFromISOformat, non ?Ah, si, c'est PrintFromISOformat.Alors, et donc là, on va mettre, du coup, notre update.Ah, quoi, j'aurais pu mettre un…Ça peut porter à confusion, là.
00:32:32 :Je fais Underscore ISO ou Underscore Date.Ouais.Ouais, mais c'est pareil, c'est ISO.J'ai date.Hop, on va récupérer notre date.Voilà.Ok, alors, sachant que si je vais vous afficher ça juste à l'écran,en fait, la date, elle est où ?
00:32:55 :Elle date ici.Ah, tu voulais juste…Ouais, ici.Donc là, c'est une date au format ISO.Souvent, vous allez la voir avec un T, ici.
00:33:04 :Mais il faut savoir que la…Alors, ça, je l'ai appris il n'y a pas longtemps.PrintFromISOformat accepte qu'il y ait un T ou pas, ici, en séparateur.
00:33:13 :Ah, d'accord.Le T, ça veut dire…Pour se dire qu'en fait, à partir de là, c'est Time.En gros, c'est le temps.Ok.Mais ça passe très bien si il n'y a pas…Pour PrintFromISOformat, ça passe très, très bien.
00:33:30 :Donc, ici, on a bien notre objet date qui est récupéré.Maintenant, ou pas ?Alors, comment j'ai ma variable ?Du coup, avec TimeData, on y ajoute 1D.
00:33:49 :Alors, je ne sais plus la syntaxe, mais tu veux l'ajouter un jour, c'est ça ?Ouais, c'est ça.Ok.Dis-moi.Plus TimeData.Ouais.Et ouais, c'est Day ou Days ?
00:34:07 :Ah bah, il y a marqué Days, c'est bon.Là, on a Days égale à 1.C'est Day dans le constructeur, il me semble, et c'est Days dans Delta.
00:34:16 :Ok.Et maintenant, si je veux aller modifier, du coup, mon dictionnaire ?Bon, déjà, on va le mettre en string.Ouais, ok.Alors, on peut mettre en string.
00:34:35 :FinalData.updatedAt, égal…Donc là, c'est updated, c'était comme ça, updatedAt, ok.Égal newUpdateIsOformat.Et donc là, c'est bien IsOformat.Et on l'envoie comme ça.Et maintenant, on va se faire un petit peu de print d'UseOnData.
00:35:08 :Alors, on a le premier, bon, c'est un peu bazar là, mais updatedAt qui est là,on est au 5.1.2020.Et ici, on est bien au 6.1.2020.
00:35:20 :Et vous voyez qu'automatiquement, il va me remettre l'été, ici.Ce qui n'était pas la base, ok.Ok, donc voilà, mais ce n'est pas fini.Dernière petite chose.
00:35:33 :Et si maintenant, ça, je veux l'envoyer dans un fichier JSON.Donc on doit que l'envoyer dans le fichier JSON, c'est ça ?Dans le fichier JSON, ouais, dis-moi.
00:35:54 :Si on le crée à l'avance, tu peux le faire, tu peux tout faire en même temps.Ok.Dans ce cas, on va faire...Déjà, il y a une importation du fichier JSON.
00:36:09 :Alors, il est là, le JSON, il est déjà là, ok.Ouais, et puis, on fait un Oui.Ouais.Et normalement, on doit faire un Open.
00:36:25 :Ouais, ok.Ok, donc on a notre fichier JSON, ok.En mode de lecture.D'écriture, plutôt.J'ai fait une connerie.En mode de ?Écriture.Ok.
00:36:47 :Et sans oublier notre variable f.Voilà, ouais.Et maintenant ?On crée une variable.Même pas besoin de créer une variable.Même pas besoin.Beaucoup dans ces cas, on peut directement être sur les fichiers avec Dump, si je ne me trompe pas.
00:37:11 :Ouais, c'est ça.Dump, voilà.Ici, on envoie...A savoir, c'est d'abord les données qu'on envoie et le fichier.Donc là, si je fais ça...Ok, j'ai mon fichier créé.
00:37:31 :Bon, ce n'est pas très propre, ok.Je n'aime pas la façon dont c'est formaté.Vous pouvez...Ajouter l'indentation.Voilà, c'est ça.Indent="4".On va mettre une indentation un peu plus propre.
00:37:50 :Et là, voilà, il y a l'indentation qui va avec.Ok.Sinon, si on faisait un...Juste pour le fun, on aurait pu faire un...C'est quoi ?
00:38:07 :Json.dump.Ici, on aura une JsonData.Je regarde si je n'ai pas fait d'erreur entre deux.Voilà.Et en gros, si on fait ça, si on fait un print du type de notre variable ici,on repart bien sur une chaîne de caractère, ok ?
00:38:29 :Voilà.Donc ça, c'est bien de savoir un peu les loads, loads, dumps, dumps,depuis datetime.Il y avait aussi...Alors, je pensais à un truc qu'on aurait pu faire,mais c'est un peu...
00:38:51 :Je serais attiré par les cheveux, je pense.Non, c'est bon, ok.Sinon, il y en a qui préfèrent requests, j'imagine, non ?Pour les requêtes.
00:39:00 :Je ne sais pas si vous en faites des fois.Moi, perso, je préfère installer requestsque Redlib, c'est un petit peu plus galère.Et une dernière chose que je voulais voir avec vous.
00:39:12 :Ça, pour l'instant, on va le supprimer.Ok.Si jamais on ne souvient pas de FromIsoFormat,vous avez une idée de comment on peut le faire ou pas ?
00:39:33 :Là, il faut utiliser...Il y a une fonction, déjà, des fs, si je ne me trompe pas.Il y a... Alors, pour ceux qui...J'avais déjà fait mon tour là-dessus, j'en avais parlé.
00:39:45 :Bon.C'est pour ça que c'est bien de connaître FromIsoFormat,IsoFormat, parce que là, c'est plus galère.Vous avez datetime.Et c'est le part-time, ici.Oui, j'avais complètement oublié.
00:40:00 :Pareil, j'étais en train de chercher.Ça cogite, ça fume, mais il n'y a rien qui sort.Oui, mais ça fait du bien de les revoir.
00:40:08 :Alors, on va le faire en live.On va se le mettre sous les yeux.Forcément, si je n'ai rien.Je vais le commenter tant que je fais mon print, ici.
00:40:17 :Hop là.OK, l'update, il est ici.Alors...Vous savez comment ça marche, ou pas ?C'est part-time.Oui.Oui, il faut mettre pour l'année...Alors, il faut d'abord...
00:40:41 :Oui.Oui, il faut passer à la variable.Après, on passe, entre guillemets,on passe l'année.Donc, grand Y, grand Y, je crois.C'est ça.Après...
00:40:54 :On dirait...C'est le mois.C'est le mois.Mais moi, je suis un peu...On a le mois.OK.Le mois, c'est un petit D.Oui, c'est ça.
00:41:08 :On a le petit D.Il n'y a pas de T à la base, ici, non ?Voilà, donc là, c'est un espace.Après, %H.Un grand H.
00:41:19 :Alors...Deux %.Oui.En N, les minutes.Les minutes.On a bien compris.OK.Les secondes.Avec un S.Oui.Et les minutes, par contre...
00:41:39 :C'est là où j'ai un doute.Je crois que c'est un flot.C'est un S majuscule ou minuscule ?Je crois que c'est comme ça.J'ai un doute.
00:41:48 :On va regarder ça.Si on fait un print...Déjà, est-ce qu'on n'a pas d'erreur ?On va avoir de la chance.Sinon, on va chercher ensemble.
00:41:58 :Tac.Ah non, c'est ça.C'est bien le F minuscule.OK.Bon, voilà.Sinon, moi, je préfère...Tosa, je vous le dis.C'est le seul exercice que j'ai vu dans ce genre.
00:42:14 :Il peut vous embêter avec les % et tout.Mais l'exercice où il faut faire un load...Ainsi de suite.Je sais que si vous utilisez From Isoforma,ça vous sauve la vie.
00:42:23 :Parce qu'il n'y a pas de stress à aller chercherles petits % Y, % machin.Surtout qu'il y a du temps.Donc, ça va beaucoup plus vite avec la From Isoforma.
00:42:31 :Donc, voilà.Voilà, c'est ce que j'avais prévu pour ce soir.J'espère que ça vous a plu.Yes.Dernier exercice que j'avais envie de faireparce que ça fait bosser sans avoir plusieurs choses.
00:42:49 :Je sais que souvent, sur les coups de stress,la question de Tosa, ça peut être les loads,les dumps, les dumps qui peuvent poser problèmeet la time.
00:42:58 :S'ils mélangent souvent plus, ça peut être un peu galère.Est-ce qu'il y a des questions ?Je suis là.C'est bon pour moi.J'en ai juste une.
00:43:08 :Est-ce que quelqu'un m'entend ?Oui.Ok.Bon, pour le prochain mentorat, je serai bon.Pas de souci.Écoutez, en tout cas, j'espère que ça vous a plu.
00:43:24 :Les premières questions étaient un peu plus basiques.Mais là, c'est le but de revoir tout çapour l'objectif Tosa.Au moins, vous êtes blindés.C'est bien.
00:43:32 :Je sais qu'à l'époque, c'était le stress.J'ai fait partie de la première promotion.Je l'avais passée.On n'avait pas encore fait ce qui est quiz, machin tout.
Aucune occurrence trouvée pour « ».