Résolue

Bonjour,

Merci pour votre retour. Donc si je comprends bien, en ecrivant le code, seul python doit pouvoir les renseigner ?
Dans ce cas, il faut seulement ecrire "entrer un nombre" dans les accolades ?

Je reste a votre disposition.

Bonjour Lucas

Dans le code que tu as proposé, tu renseignais toi-même les chiffre et l'addition, en fait ce qui est demandé dans l'exercice c'est que lorsque tu utilise le scirpt, tu renseignes les chiffres à additionner.
Je vais te donner indice, il faut que tu utilise la fonction input.

N'hésites pas si tu as plus de difficulté pour réaliser l'exercice.

Stéphane

Re bonjour Lucas

Si tu veux on peut se fixer un rendez-vous sur discord si nécessaire ;)

Stéphane

Bonjour,

Je reviens vers vous car j'ai une question très importante.

Pour esperer progresser en python (et en programmation plus généralement) il est forcément nécessaire d'ecrire du code à executer le plus souvent possible ? Sur Pycharm par exemple ?

Je vous le demande car j'ai téléchargé la version gratuite de Pycharm pendant 30 jours (bien avant de m'etre inscrit sur docstring) et depuis, je n'y ai plus accès et on me propose une version payante.

Selon vous, quelle version de Pycharm devrais je acheter ?

Je reste à votre disposition.

Cordialement.

Gabriel Trouvé

Mentor

salut :)

oui code des petits projets concrets pour commencer.

Et pour pycharm :
Télécharge la community edition, c´est gratuit : https://www.jetbrains.com/pycharm/download/?section=windows

Bonjour,

J'ai suivi le lien que vous m'aviez envoyé pour accéder à Pycharm mais je n'arrive toujours pas à y accéder.

Il faut systématiquement suivre les memes étapes, mais rien n'y fait et je n'ai toujours pas accès à Pycharm.

Pourriez vous m'aider ?

Je reste à votre disposition,

Cordialement.

Gabriel Trouvé

Mentor

Salut,

ça te fait quoi exactement ?
Tu aurais une capture ?

Merci ^^

Bonjour,

Je n'arrive pas à faire de capture d'écran mais on me demande d'apporter des modifications à l'ordinateur et à chaque fois, je dois réaffirmer les paramètres pour accéder à pycharm.

Puis une fois sur pycharm, on m'informe que la version de 30 jours a expirée et de payer pour avoir de nouveau accès au service.

Gabriel Trouvé

Mentor

Re,

Désinstalle pycharm complètement.

Télécharge la community, et une fois installé ça devrait être bon.

C'est parce que tu es sur la pro

Re-bonjour,

Vous voulez dire que je dois supprimer pycharm ?

Gabriel Trouvé

Mentor

Oui supprime ton installation.

Télécharge la nouvelle version e, "community", tu installes, et c'est ok normalement :).

Bonjour,

Je reviens vers vous après avoir enfin réussi à installer la version ecommunity de pycharm et je tiens à vous remercier pour votre aide.

Cependant après avoir écrit plusieurs programmes (notamment la fonction "def_init_self"....)des erreurs ont été affichées et en corrigeant les erreurs cela échouait encore malgré tout.

De plus, en modifiant le code écrit avec succès (0) en ajoutant n'importe quelle occurence, ce dernier marquait toujours avec succès plutot que d'ajouter une erreur.

Enfin, l'execution du code semble planter par moment et prend du temps à charger.

Que faire ?

Gabriel Trouvé

Mentor

Bonjour,

Super pour la community :)

Il faudrait que l'on voit ton code pour t'aider.

Bonjour,

Voici un exemple du programme que j'ai réecrit et qui cette fois me renvoie les informations (5) du precédent programme (qui est une addition).

Cordialement.

Gabriel Trouvé

Mentor

Le problème est la façon d'écrire le code, par exemple pour l'avion tu devrais faire :

class Avion:
    def __init__(self, marque, puissance, vitesse):
        self.marque = marque
        self.puissance = puissance
        self.vitesse = vitesse

Ensuite tu vas pouvoir instancier ton avion. Et faire un print des attributs.

Même pour ton addition :

a = "5"
b = "8"
print(f"Le résultat de l'addition de {a} avec {b} est égal à {int(a) + int(b)}")

L'idéal serait de revoir la formation de base de Python sur Docstring pour bien intégrer les concepts.

A bientôt :)

Re Bonjour,

Je suis toujours en galère totale avec mes programmes erronée (si bien que je ne suis pas du tout concentré)

Pourriez vous me préciser l'erreur dans l'exemple (def_ init_self) que je vous joins ci dessous ?

Cordialement.

Gabriel Trouvé

Mentor

La petite erreur, c'est que tu as écrit def_init alors qu'en Python, il faut mettre deux underscores de chaque côté : def __init__.

class Avion:
    def __init__(self, marque, puissance, vitesse):
        self.marque = marque
        self.puissance = puissance
        self.vitesse = vitesse

Tu vois, pour chaque attribut comme marque, puissance et vitesse, tu dois assigner une valeur après le signe égal.

Bonjour,

Je reviens vers vous car j'aurais une question.

Peut on utiliser la fonction range avec des mots plutot que des chiffres ?(en effet, j'ai vu des exemples de code sur lesquels "for i in range" utilisait des phrases.

De plus pourriez vous m'expliquer le sens de la fonction diff ? (en lien avec dataframe, je crois)

cordialement.

Gabriel Trouvé

Mentor

Salut,

Tout d'abord sans range on peut itérer sur des mots :

mots = ["Salut", "les", "amis"]
for mot in mots:
    print(mot)

Tu ne peux pas utiliser range sur des mots. Tu peux utiliser la fonction len qui retourne un entier sur la liste, puis utiliser range :

mots = ["bonjour", "le", "monde"]
for i in range(len(mots)):
    print(mots[i])

Donc non dans le sens à range tu passes un entier.

Mais range est flexible, regarde cet article : https://www.docstring.fr/formations/les-listes/la-fonction-range-1978/.

Pour diff, je pense que tu parles de pandas alors ?
Si oui, ils en parlent ici : https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.diff.html.
En fait, la fonction diff() permet de calculer la différence entre chaque ligne et la ligne précédente dans un DataFrame.
Voici un exemple, je viens de m'amuser avec un exemple simple ahah :

Bonjour,

Après un bug de mon ordinateur, tout mon travail pycharm a disparu et il avait pourtant été sauvegardé en fermant la page à chaque fin de mes sessions.

Y'aurait il moyen de récuperer tout mon travail avec les programmes que j'ai écrit depuis des mois ?

Cordialement.

Gabriel Trouvé

Mentor

Salut,

C'est bizzare ça !

Sur ton PC, tu sauvegardes tes fichiers où ? Avec un explorateur de fichier, tu devrais pouvoir aller jusqu'à tes projets, c'est vraiment curieux.

Quand tu cliques sur ouvrir un projet, ça fait quoi ?

Pour ne rien perdre en cas de soucis, je te conseille de regarder cette vidéo : https://youtu.be/76hFN6kcV04?feature=shared

Bonjour,

Quand je rouvre Pycharm, la page est vierge et je dois donc écrire du nouveau code.

Pycharm fonctionne en tant qu'appli sur mon PC.

Et j'ai d'ailleurs un mal fou à réecrire des programmes similaires qui ne font que de planter avec "code 1".

Gabriel Trouvé

Mentor

Normalement tu peux faire Ouvrir, ou projets récents ? Et là tu vas retrouver ce que tu avais fait.

Bonjour,

Je vous joins ci dessous un de mes nouveau programmes de listes imbriquées ainsi que le corrigé d'un exercice docstring.

Bien que l'execution pycharm affiche "code 0'", il y a une erreur lorque je fait l'exercice docstring, car pour recuperer les derniers elements de la liste, il faut toujours utiliser -1 au debut puis 0 après (ce qui est plutot l'inverse sur pycharm qui m'affiche "code reussi 0").

y'aurait il un probleme ?

cordialement.

Gabriel Trouvé

Mentor

Salut,

Tu peux re initialiser l'exercice ?

Car moi avec ce code ça passe :

langages = [["Python", "C++"], "Java"]
nombres = [1, [4, [2, 3]], 5, [6], [[7]]]

python = langages[0][0]
deux = nombres[1][1][0]
sept = nombres[-1][0][0]

Pour ton programme, pourquoi mettre des parenthèses qui ne suivent pas les conventions ? Tu pourrais écrire planetes et etoiles.

Bonjour,

En m'inspirant de l'exercice "additionner deux matrices" sur docstring, j'ai essayé de créer un programme avec deux triangles, mais le code est toujours erroné. Ou est l'erreur ?

Je vous joins les documents ci dessous.

Cordialement.

Gabriel Trouvé

Mentor

Est-ce que tu peux formater ton code directement dans l'éditeur stp ? en copiant collant ? et en utilisant la balise "code" de l'éditeur ?

ça sera plus simple, mais je vois déjà plusieurs problèmes comme ça.

Merci d'avance

Bonjour,

Je souhaiterais revoir les commandes de terminal (ls,pwd,etc...)

Mais en m'appuyant sur les exemples de docstring, cela ne fonctionne pas.

J'ai créé un dossier sur pycharm (je vous le joins ci dessous) et je voudrais savoir s'il est possible de l'utiliser avec la fonction ls par exemple.

Cordialement.

Gabriel Trouvé

Mentor

Salut,

là tu n'es pas dans le terminal, c'est la console Pycharm pour ton script python. Avec pycharm tu peux ouvrir une session de terminal (alt +F12 il me semble).

Ensuite tu peux taper tes commandes (pas des fonctions) ls, pwd etc...

Bonjour,

j'ai essayé d'ouvrir une session de terminal en faisant alt et f12 comme convenu mais cela ne fonctionne pas.

Comment faire ?

Cordialement.

Gabriel Trouvé

Mentor

Fais moi une capture complète de pycharm stp, et je te met une fleche dessus

Gabriel Trouvé

Mentor

A gauche de la grosse marque rouge, tu cliques, ça ouvre un terminal

Bonjour,

Je voudrais créer des fichiers et dossiers python. Comme convenu, j'utilise les fonctions "os.path.join","makedirs" ou "mkdir". le script s'execute correctement mais je ne trouve pas de fichier correspondant a ceux que j'ai créé sur pycharm en parcourant la page.

Je vous joins un extrait ci dessous,

Cordialement

Gabriel Trouvé

Mentor

Salut,

Regardes :

import os

current = os.getcwd() # récupérer le répertoire courant

affaire = os.path.join(current, 'affaire') # Créer un chemin pour le répertoire courant / affaire
os.mkdir(affaire) # création du dossier

Ou imaginons que dans le dossier courant, on veuille créer plusieurs dossiers :

import os

current = os.getcwd()

affaire = os.path.join(current, 'affaire', 'dossier')
os.makedirs(affaire)

Tu vois, j'ai une variable pour le dossier courant. Ensuite je passe cette variable à join.

Pour la fonction makedirs, je passe bien ma variable affaire, pas une chaine de caractères.

Merci beaucoup pour votre retour. Mais après, ou trouver le dossier "affaire" dans la page pycharm ?

Gabriel Trouvé

Mentor

Dans le dossier dans quelquel tu travailles ^^ Directement. Tu exécutes, et tu vas voir le dossier apparaitre

Pourriez vous me montrer sur l'image ?

Gabriel Trouvé

Mentor

Si tu exécutes mon code dans pycharm, tu vas voir les dossiers dans light-edit.

Bonjour,

Je reviens vers vous après plus d'une semaine d'absence car mon ordinateur était en panne.(veuillez d'ailleurs m'excuser pour cet imprévu)

J'ai réussi à récuperer mes projets pycharm mais étonnement, l'editeur pour exécuter mon code n'apparait plus. Que faire ?

Cordialement.

Gabriel Trouvé

Mentor

Bonsoir,

tu peux nous faire une capture d'écran ?

Merci

Gabriel Trouvé

Mentor

En cliquant en bas à droite tu peux reconfigurer un interpreteur Python. C'est marqué No interpreteur. Cliques dessus et tu peux le faire d'ici.

C'est ecrit en anglais (add interpreter,interpreter settings,manage packages,add local interpreter) lequel choisir ?

Alors je n'ai plus Pycharm pour te faire une vidéo, mais voici la documentation officielle est assez détaillée. Et je t'ai mis une vidéo youtube très courte au cas où :)

Regardes :
https://www.jetbrains.com/help/pycharm/configuring-python-interpreter.html#view_list

https://youtu.be/sLcLE0zJWuA?feature=shared

Bonjour,

L'editeur pycharm ne fonctionnant toujours pas, devrais je en télécharger un autre différent ? Si oui lequel me conseillerez vous ?

Cordialement.

Salut,

Tu as bien essayé de regarder la documentation et la vidéo ?

Sinon en tu en as d'autres comme VS Code, mais Pycharm est vraiment très bien.

À bientôt.

Bonjour,

Je vous joins ci dessous une liste imbriquée que j'ai rédigée sur pycharm. est ce correct ?(malgré le code 0 que j'imagine faire des erreurs)

De plus après avoir rédigé une matrice auparavant la mention matrice s'affiche sans cesse dans l'editeur de code au dessus de "code 0", est ce normal ?

Cordialement.

Gabriel Trouvé

Mentor

Salut,

Si sur Pycharm tu as un code 0 c'est qu'il n'y a pas eu d'erreur. Sinon tu aurais un code 1.

Fais attention aux conventions, indentations etc...

Tu as pas mal d'incohérences dans ton code aussi je pense. Par exemple, pourquoi faire un os.path.join en chaîne de caractères ?

Je pense que tu devrais revoir la formation de base au complet pour prendre les bonnes habitudes.

A bientôt !

Bonjour,

Merci pour votre retour.

j'ai écrit le texte "os.path.join" en chaine de caractères car sinon le code affiche une erreur.

Comme j'utilise un ordinateur windows j'ai inversé les slashes qui étaient intialement \ en les inversant en /.

Ps : Quand vous dites "revoir la formation de base ", vous voulez dire l'ensemble des bases de python ?(listes ,fonctions, méthodes, variables ,concaténation ,opérateurs de bases, etc...)

Cordialement.

Gabriel Trouvé

Mentor

Pour les \ tu peux utiliser une raw string :

base = r"C:\Users\Gabriel\Desktop\" 

Comme ça ton \ ne sera pas interprété comme un caractère spécial.

Et oui, c'est vraiment important, reprend toute la formation de base depuis le début, en y allant à ton rythme. Et revoir chaque concept, en restant un peu dessus, en écrivant le code que tu vois dans les vidéos dans un éditeur. Comme ça tu peux tester ce que ça fait, faire des print etc...

Bonjour,

Je bloque vraiment sur la fonction "partial", Je vous joins un extrait ci dessous pour savoir s'il est correct.

De plus , dans "f for f in files if f endswith(ext)", cela signifie "for functools in filter" ?

Cordialement,

Gabriel Trouvé

Mentor

Salut :)

Tu fais des erreurs de base qui rendent le débogage beaucoup plus dur que nécessaire. Par exemple, tu écrases print en l’utilisant comme variable, et ta compréhension de liste est mal formulé. Si tu avais bien les bases, ces bugs seraient faciles à repérer, mais sans elles, ils deviennent des obstacles. Je te conseille de revoir les fondamentaux avant d’aller plus loin, sinon tu risques de perdre du temps sur des erreurs évitables.

Et tu vas voir, après tout te semblera plus simple :)

A bientôt et n'hésites pas !

Bonjour,

Je souhaiterais lire des fichiers en JSON mais ca ne fonctionne pas avec toujours "no such file or directory".

Pourtant cela correspond à un fichier que j'ai créé en faisant "os" et cela m'affiche "code 0 valide".

Ensuite meme si le fichier dans import os est valide, à chaque fois cela me retourne une erreur quand j'utilise JSON.

je vous joins le programme ci dessous.

Cordialement.

PS: Pourriez vous m'indiquer comment trouver un fichier créé dans pycharm? auparavant cela fonctionnait mais depuis, plus rien.

Gabriel Trouvé

Mentor

Salut,

Tu peux créer ton fichier quand tu es en mode écriture dessus. Car avant d'utiliser json.load il te faut du contenu dans le fichier sinon tu vas avoir une erreur.

import json


with open('data.json', 'w') as file:
    json.dump({'name': 'John', 'age': 30}, file)


with open('data.json', 'r') as file:
    data = json.load(file)

print(data)

Merci pour votre retour,

Il est donc possible d'utiliser autre qu'un fichier dans JSON (un humain comme sur votre schema par exemple ?)

Cordialement.

Gabriel Trouvé

Mentor

data.json est un fichier json qui va contenir des données.

En fait ton fichier json va contenir les données que tu vas lui envoyer. Ici ça réprésente une identité, mais tu pourrais mettre autre chose.

Bonjour,

Je souhaiterais savoir s'il est indispensable de telecharger Visual Studio Code pour effectuer des programmes en JSON ou si pycharm est suffisant. Dans ce cas la, comment faire pour bien créer des fichiers comme dans les tutoriels ?(qui eux impliquent d'utiliser VSC avec Settings)

Cordialement.

Gabriel Trouvé

Mentor

Après tu vas soit utiliser des json existant, soit en créer avec ton programme Python. Alors que ça soit VScode ou Pycharm peu importe.

Tu peux le créer manuellement en cliquant sur le logo fichier +, et tu l'appelles settings.json.

Bonjour,

Je tiens à vous faire part d'un petit bug avec pycharm, l'editeur de code affiche constamment "code 0",donc réussi ,meme quand je fais exprès de taper un programme erroné.

Que faire ?

Je vous joins un extrait ci dessous.

Cordialement.

Gabriel Trouvé

Mentor

Salut,

De mon côté quand j'éxécute j'ai

Ou sinon fais une petite vidéo du cheminement de quand tu lances le script stp

Bonjour,

Je n'arrive pas à faire de video mais j'ai ecrit un programme comme d'habitude.

Ca a commencé quand j'ai créer un projet sur pycharm et depuis ca affiche toujours code 0.

Après tu peux toujours tester avec git bash pour voir si ça fait pareil. Mais prends une capture complète de l'écran. Après un re run du programme

Bonjour,

Je vous joins la capture d'ecran ci dessous, j'ai essayé d'enregistrer une video mais le format ne passe pas.

J'ai cependant du ecrire deux nouveaux code erronés car j'avais effacé l'ancien et je voulais voir si ca plantais encore.

Cordialement.

Thibault houdon

Mentor

Bonjour Lucas,

Avez-vous vu notre formation sur PyCharm ? Vous êtes en train d'exécuter la configuration new_project (visible en haut à droite) et j'imagine que cette configuration n'est pas celle du fichier actuellement ouvert. Je vois que vous avez 2 fichiers main.py (le premier onglet et le 2e, qui est ouvert).

J'imagine donc que votre configuration new_project exécute le fichier dans le premier onglet et non celui que vous modifiez pour inclure des erreurs.

Il faut bien faire attention avec PyCharm, le fonctionnement est différent de VS Code et des autres IDE qui exécutent par défaut le fichier ouvert. Avec PyCharm, ça fonctionne avec des configurations et la configuration est paramétrée sur un fichier qui peut être différent de celui que vous éditez.

Bonjour,

Je reviens vers vous par rapport au module JSON.

J'ai bien suivi les instructions des tutoriels en créeant deux fichiers distincts(l'un avec une liste et l'autre avec le module import JSON
en lecture "r")

Cependant en voulant executer le programme, je me retrouve systématiquement avec le script de sortie d'un autre fichier (celui sur lequel j'écris mes programmes en général) ainsi je ne dispose pas de la fonction "run" losque je veux executer mon projet JSON sur le fichier spécialement créé.

Je vous joins l'extrait de mon programme ci dessous.

Cordialement.

Gabriel Trouvé

Mentor

Salut,

Pour commencer, regardes la syntaxe.
Le nom du fichier en chaine de caractère et son extension.

import json


with open('data.json', 'w') as file:
    json.dump({'name': 'John', 'age': 30}, file)


with open('data.json', 'r') as file:
    data = json.load(file)

print(data)

Penses à créer le fichier avec son extension (.json)

Et tu peux avoir des data basiques pour tester un peu ton programme :

{
  "nom": "Jean Dupont",
  "age": 34,
  "ville": "Paris",
  "profession": "Ingénieur",
  "actif": true
}

Bonjour,

J'ai récemment travaillé sur les listes de courses et me suis inspiré du modèle des tutoriels.

Toutefois comme j'utilise Pycharm, le format n'est pas le meme que sur les tutos

Je vous joins un extrait ci dessous, selon vous y'aurait il une faute ?

De plus, pourriez vous m'indiquer comment faire sur pycharm, les trois petits points pour créer une phrase (exemple: ajouter un element , qui déplie :input : entrer un element)

Cordialement,

Gabriel Trouvé

Mentor

Salut,

Je ne sais pas pourquoi tu as beacoup de guillemets. Je te conseille de revoir tranquillement le projet avec la correction. Les inputs, les boucles , les conditions et la syntaxe. Reprends vraimen le base du début, c'est un conseil avant de t'aventurer plus loin.

Pour déplier ou replier une fonction par exemple, utilises le petit symbole sur le côté :

A bientôt !

Bonjour,

A propos de guillemets, je tiens à vous montrer un exemple dans l'extrait que je vous joins ci dessous.

J'ai copié collé le programme json que vous m'aviez envoyé comme exemple directement dans pycharm, bien que correct il m'a relevé plusieurs erreurs, et finalement à force de modifier les quelques erreurs d'indentation, j'ai recu un code 0 lorsque j'ai mis des guillemets sur "json.load" (il me retournait une erreur sinon)

J'ai constaté que l'erreur de script ne semble pas toujours la ou s'y attend (je me suis retrouvé avec d'autres code dans la meme situation) est ce normal ?

le code de base que j'ai copié collé

le meme code après l'avoir modifié

Gabriel Trouvé

Mentor

Je vois que tu en es environ à 1000 lignes. Il y a trop de choses avant. Tu devrais faire ça dans un autre fichier.
ça ne serait pas print = (data) mais print(data) pour afficher. Et json.load ne devrait pas être sous forme de str.

Vraiment, écoutes mon conseil, reprends les bases depuis le début, ça va te permettre de mieux travailler ton code avec moins d'erreurs :) Tu vas voir ça va être bien plus sympa pour toi.

Thibault houdon

Mentor

Bonjour Lucas,

Je seconde le conseil de Gabriel, il y a des erreurs dans ton code qui sont très basiques (mettre json.load en chaîne de caractères). Il faut vraiment que tu revois les bases avant de t'aventurer dans des scripts plus complexes, sinon tu risques de tourner en rond. On reste bien sûr là pour t'aider mais comme tu as pu le voir depuis le début, on règle des problèmes qui sont facilement évitable en faisant et en maitrisant la formation de base.

Ça te permettra par la suite de passer du temps réellement sur les problèmes inhérent à tes scripts.

Bonjour Thibault,

Merci pour votre retour et pour vos conseils.
Comme je l'avais expliqué à Gabriel, le code était erroné si je ne mettais pas json.load en chaine de caractère. Il m'en avait d'ailleurs envoyé un exemple.
Pour vérifier je l'ai copié collé dans mon editeur pycharm et le script a retourné une erreur et ce n'était qu'avec json.load en chaine de caractère que le script était finalement valide. Je vous assure que j'ai bien suivi vos conseils (revoir les bases, etc...) mais la aussi meme en s'appuyant sur des exemples de bases ,cela relève des erreurs la ou on ne s'y attend pas. Dans le cas de json.load, j'ai beau avoir tout bien vérifié ca relève quand meme une erreur, je n'y comprends rien.

Je vous joins toutefois l'exemple de Gabriel que j'ai executé dans mon script ci dessous, cela vient vraisemblablement du script, je ne comprends pas mais sans chaines de caractères sur json.load c'est systmatiquement erroné

Je vous remercie toutefois pour vos conseils,

Cordialement.

Gabriel Trouvé

Mentor

En fait ce qui est compliqué, c'est que la partie de code est à la 1008eme ligne. Donc c'est compliqué de savoir ce qui se passe avant. Isole cette partie de code sur un nouveau fichier :

import json


with open('data.json', 'w') as file:
    json.dump({'name': 'John', 'age': 30}, file)

with open('data.json', 'r') as file:
    data = json.load(file)

print(data)

Bonjour,

Merci pour votre retour. Comment créer un fichier avec le logo jaune bleu (comme dans l'extrait envoyé avec main.py) ?

Cordialement.

Gabriel Trouvé

Mentor

Voici une facture pour créer un fichier python :

Merci beaucoup.

Bonjour,

J'ai bien créé un nouveau fichier pour améliorer le code mais j'ai encore la meme erreur que j'avais mentionné precédemment.

J'ai beau ecrire un code erroné, ca execute correctement.

Pourtant j'ai bien créé un fichier distinct de main.py (d'ailleurs le script executé affiche toujours main.py)

Je vous joins un extrait.

Cordialement.

Gabriel Trouvé

Mentor

Salut,

en haut à droite tu peux selectionner current file :

Thibault houdon

Mentor

Salut Lucas,

Je réitère sur le fait que tu dois t'assurer de bien maîtriser les bases des outils que tu utilises. Regarde notre formation PyCharm, il n'y a rien de magique quand un bug apparaît, il ya toujours une explication.

Dans ton cas, tu t'emmêles les pinceaux avec PyCharm, c'est un éditeur compliqué, tu peux exécuter ton script de 10 façons différentes, là tu es dans les scratch files, qui sont encore un concept spécifique à cet IDE.

Tu te retrouves à essayer de régler des problèmes de code (en passant ton code en chaîne de caractères) alors que le problème est ailleurs.

Si tu veux absolument utiliser PyCharm au lieu de Visual Studio Code, regarde notre parcours à ce sujet, ou au minimum cette formation qui parle des configurations et de comment exécuter son code. Je vois que tu ne les as pas regardé donc tu y vas à l'aveugle dans un logiciel complexe.

En passant quelques heures à regarder ces vidéos, tu vas t'éviter des jours de debug. Ça peut paraître au départ comme une perte de temps mais je t'assure que de bien maîtriser les bases des concepts et des outils que tu utilises te feras gagner énormément de temps par la suite. Sans ça tu vas tourner en rond.

Bonjour,

J'ai une erreur sur pycharm avec ce nouveau "code 103".

Je vous joins un extrait, de quoi s'agit il et comment regler ce probleme ?

Cordialement.

Gabriel Trouvé

Mentor

Salut Lucas, ça m'a l'air d'être un problème d'interpréteur.
Il ne doit pas être selectionné. Tu devrais revoir la formation sur Pycharm, Thibault montre bien comment choisir un interpréteur Python :
https://www.docstring.fr/formations/executer-du-code-avec-pycharm/les-compounds-1096/?module=2&session=4&course=3

J'ai regardé le tuto mais je ne trouve pas , pourriez vous m'indiquer comment faire ?

Gabriel Trouvé

Mentor

En bas à droite de ton écran tu peux séléctionner ton interpréteur :

Bonjour,

A cause de l'incident de l'interpreteur, j'ai du retélecharger pycharm community, mais comment afficher l'exécuteur de code ? Les instructions indiquées ne fonctionnent pas.

Je vous joins un extrait ci dessous.

Cordialement.

Thibault houdon

Mentor

Bonjour Lucas,

Tu vois l'interpréteur indiqué en bas à droite comme Gabriel te l'as mentionné. Les instructions sont ensuite similaire à ce qui est expliqué dans le cours.

Si tu as autant de soucis avec PyCharm je te conseille vivement d'utiliser un éditeur plus simple comme VS Code. Et de vraiment bien revoir les formations de base.

Regarde la formation qui montre comment utiliser VS Code, essaie de lancer un script tout simple et ne va pas plus loin.

Bonjour,

Comme convenu, j'ai delaissé pycharm pour vscode , j'ai bien selectionné l'interpreteur mais le terminal n'execute toujours rien.

Voici un extrait

Gabriel Trouvé

Mentor

Salut,

Ton fichier à bien l'extension mon_fichier.py ?
Tu as bien installé l'extension python ?

Et dans tous les cas, ici ça ne pourrait pas fonctionner.

Test :

hello = "salut"
print(hello)

Bonjour,

Je reviens vers vous car j'aurais une question.

Quelle est la différence entre le test TOSA et la certification TOSA ?

Et de quoi est composée la certification TOSA par rapport au test ? S'agit t'il d'exercices ou de question ?

Cordialement.

Bonjour Lucas,

Nous proposons un parcours TOSA sur Docstring. Ce parcours vous permet d'acquérir des connaissances solides en Python, des bases jusqu'au niveau expert. À la fin du programme, il y a un processus d'évaluation :

  1. Une évaluation TOSA blanche (version plus courte)

  2. La certification finale (examen TOSA officiel)

Voici le lien avec toutes les informations : https://www.docstring.fr/certification-tosa/.

J'espère avoir répondu à ta question :)

Bonjour,

Toujours par rapport à la certification TOSA, je voudrais savoir si elle se compose principalement d'exercices (de code à effectuer) ou de quizz?

Cordialement.

Salut Lucas,

Tu as des QCM, des propositions à relier entre elles et des exercices de code sur un éditeur en ligne. Les thèmes sont variés : modules, syntaxe, complexité, structures...

Salut Lucas,

Par complexité, on parle d'optimisation, comme ce qu'on aborde dans cet article :)

Bonjour,

Je vous joins ci dessous ma proposition à l'exercice "additioner deux matrices"

Est ce Correct?

PS : Ma fonction "envoyer ma solution" ne marche plus

Salut,

Je vois que tu regardes les longueur des matrices.

Mais à première vue je vois des Raise =ValueError et print =False

Et il me semble que le code est incomplet. Je t'invite à regarder la solution. : https://www.docstring.fr/formations/exercices/4/?tab=solution

Reprends bien les bases, car ce que tu fais avec le Raise et le print est erroné.

A bientôt !

Bonjour Lucas,

Effectivement, petit bug de notre côté avec "Envoyer ma solution". On va régler ça.

Je vais clôturer par contre ce fil car il devient beaucoup trop long. Ouvre un nouveau fil quand tu as une question pour bien séparer les conversations, ça sera plus facile à suivre.

Bonjour,

Je voudrais savoir s'il est nécessaire de faire tous, vraiment tous les exercices pour esperer obtenir la certification TOSA ? Certains exercices ne me semblent pas en adequation avec les cours.

Pourtant, je m'exerce regulierement à les refaire en m'inspirant des solutions. Est ce une bonne technique ?

Cordialement.

Salut,

Je te conseille d'ouvrir une nouvelle discussion.
En fait pour obtenir la certification TOSA il faut obtenir un certain score, donc réussir un certain nombre d'exercices.

Il te faut au moins le niveau opérationnel :

Bonjour,

Je vous joins ci dessous un extrait de POO que j'ai moi meme créé. Je me suis servi de mes connaissance , alors la méthode n'est elle pas trop surchargée ?(je voulais avoir votre avis)

PS :comment ouvrir un nouveau fil de discussion ?

"C:\Users\Utilisateur\Pictures\encap oop screen.png"

Gabriel Trouvé

Mentor

Salut,

Pour ouvrir une nouvelle question regarde il y a un bouton à droite de la page : https://www.docstring.fr/accompagnement/questions/?sort_by=-date

Dans ton code il y a des problèmes :

  • Dans tes méthodes tu as des paramètres, mais ils sont ignorés. Tu assignes des valeurs en dur.

  • Le nom des classes ne suivent pas la PEP8 qui recommande la PascalCase.

  • La méthode courir utilise implicitement. une fstring mais sans le f devant.

Vraiment il faudrait repartir sur les bases, ne va pas sur la POO sans les bases.

Bonjour ,

Je voudrais passer les tests tosa sur docstring. comment s'y prendre ?

De plus peut on egalement passer la certification TOSA sur docstring ?

Cordialement.

Gabriel Trouvé

Mentor

Bonjour,

Pour passer le TOSA nous avons deux offres : https://www.docstring.fr/certification-tosa/#interested-form

Avec notre formule, tu as accès aux tests de compétences, quiz, exercices sur Docstring, et à l'évaluation + certification TOSA :).

Je suis à ta disposition si tu as d'autres questions.

Gabriel

Bonjour,

Je voudrais savoir combien coutent les test et la certification TOSA python sur docstring ? De plus la certification comporte t'elle aussi 35 questions comme celle de la version officielle ?

Cordialement.

Gabriel Trouvé

Mentor

Salut Lucas,


Voici un petit récap des offres.
Pour les questions,
En gros tu as un test d'évaluation, un tosa blanc de 25 questions. Et une certification officiele de 35 questions.

Bonjour ,

Je voudrais avoir votre avis sur le code joint ci dessous sur lequel j'ai tenté de récuperer le nombre entier dans une chaine de caractères . Est ce correct ?

Cordialement.

retour ="J|ai paye 500 euros d|amende"
"500".split("J|ai paye 500 euros d|amende".join("cinq cent euros"))

Gabriel Trouvé

Mentor

Ici. tu as trop d'erreurs.

Sans regex une solution :

retour ="J|ai paye 500 euros d|amende"
liste = retour.split()
for el in liste:
    if el.isdigit():
        print(el)

Bonjour,

Je reviens vers vous car je voudrais savoir si je peux poursuivre la formation en m'entrainant sur Pycharm ? En effet, je n'arrive pas à bien configurer VScode malgré les tentatives répétées.
J'aimerais donc savoir si Pycharm peut marcher pour créer des fichiers(qui ne sont pas forcément visibles dans le terminal comme VScode,de même pour le résultat des programmes que j'exécute).

Cordialement.

Gabriel Trouvé

Mentor

Bonjour,

Il n'y a pas de soucis. Peu importe, Pycharm et Vscode sont tous les deux très bien :)

Gabriel Trouvé

Mentor

Bonsoir,

Non il n'y a pas les django, git ou pyside. Le TOSA concerne uniquement Python et les librairies standards :)

Bonjour,

Je vous joins un extrait ci dessous sur un calcul pour connaitre le temps entre deux dates, est ce correct ?

Cordialement.

Gabriel Trouvé

Mentor

Bonjour,

Voici la bonne méthode :

from datetime import datetime

date1 = datetime(1912, 4, 15)  # année, mois, jour
date2 = datetime(2001, 7, 20)

resultat = date2 - date1

print(f"Différence : {resultat}")
print(f"Nombre de jours : {resultat.days}")

C'est ok pour toi ?

PS:

Je vous joins ci dessous l'extrait d'une de mes listes de courses. Y'a t'il une erreur ?

Gabriel Trouvé

Mentor

Salut,

Les print ne sont pas utilses et les méthodes ne sont pas correctement utilisé, voici comment faire :

liste_de_courses = ["poireaux", "patates", "carottes", "aubergines", "concombre"]

while True:
    regles = input("""Choisir parmi les options suivantes:
'a' = ajouter article à la liste
'b' = retirer article de la liste
'c' = afficher la liste
'd' = vider la liste
'e' = quitter
Votre choix ? """)

    if regles == "a":
        article_a_ajouter = input("ajouter article à la liste: ")
        liste_de_courses.append(article_a_ajouter)

    elif regles == "b":
        article_a_retirer = input("retirer article de la liste, nom de article à retirer: ")
        liste_de_courses.remove(article_a_retirer)

    elif regles == "c":
        input("afficher la liste")
        print(liste_de_courses)

    elif regles == "d":
        input("vider la liste")
        liste_de_courses.clear()
        resultat = "la liste est vide"
        print(resultat)

    elif regles == "e":
        input("quitter")
        resultat = "vous avez quitté la liste"
        print(resultat)
        print("au revoir")
        break

Bonjour,

Je voudrais savoir par rapport aux exercices de boucles (en voilà un ci-dessous) si le fait de simplifier le code contrairement à la solution proposée change vraiment quelque chose ?

Cordialement.

Gabriel Trouvé

Mentor

Est-ce que tu peux m'envoyer ton code formaté ici stp ?
En copiant collant

Merci d'avance

Gabriel Trouvé

Mentor

Alors faut qu'on regarde pourquoi, mais l'exercice ne devrait pas être validé.

Plusieurs problèmes :

  • Variable m inutilisée - le paramètre ne sert à rien

  • bool écrasé - plus possible d'utiliser bool() A ne Jamais faire surtout

  • Code mort - resultat =[[1], [], [0, 1, 3]] jamais exécuté

Donc dans l'état l'exercice n'est pas validé, c'est juste un problème d'asserts.
Sinon si tu veux raccourcir le code tu peux :

def matrice(m):
    return [[indice for indice, valeur in enumerate(ligne) if valeur] for ligne in m]

C'est bizzare pourtant quand je regarde certaines des autres solutions, elles indiquent aussi "m" et "boolean"

notamment celle ci:
def matrice(m):
return [[i for i, boolean in enumerate(bool_list) if boolean] for bool_list in m]

Gabriel Trouvé

Mentor

Oui tu peux tester :

def matrice(m):
    return [[i for i, boolean in enumerate(bool_list) if boolean] for bool_list in m]

print(matrice([[False, True], [False, False, False], [True, True, False, True]]))

C'est une bonne solution en compréhension de liste. Même si je préfère la solution un peu plus détaillée.

Bonjour,

Ayant des difficultés à créer des boucles complexes, je voudrais savoir s'il y avait d'autres cours docstring sur les boucles (que ceux initialement proposés) en effet si j'utilise des boucles simplifiées en une seule ligne sur les exercices, j'ai non seulement du mal à me repere dans leur syntaxe mais egalement dans l'ecriture de code de boucle complexe.

Cordialement.

Gabriel Trouvé

Mentor

Salut Lucas,

Reprends les bases : https://www.docstring.fr/formations/les-boucles/

Et après reprends les colmpréhensions : https://www.docstring.fr/formations/les-comprehensions-de-liste/

comme ca par exemple:

Gabriel Trouvé

Mentor

Salut Lucas,

nan ça ne va pas, si tu as validé, c'est parce que tu renvoie un résultat manuellement, qui ne découle pas de ton code.
Et l'expression génératrice ne t'es pas utile ici.

Si tu veux le faire en une ligne tu pourrais avec le module collections :)

Bonjour Gabriel,

Voici une boucle que j'ai créé, je vous la joins ci dessous, y'a t'il une erreur ?

Cordialement.

Thibault houdon

Mentor

Bonjour Lucas,

Merci de créer un nouveau fil de discussion quand vous avez une nouvelle question, ce fil devient beaucoup trop compliqué à gérer pour nous avec la longueur de la conversation.

Vous pouvez créer un nouveau fil de discussion en cliquant sur ce bouton sur la page des questions.
Nouveau fil de discussion

Je vais fermer ce fil et nous ne répondrons plus dessus désormais, merci donc de créer un nouveau fil :)

Inscris-toi

(c'est gratuit !)

Inscris-toi

Tu dois créer un compte pour participer aux discussions.

Créer un compte

Rechercher sur le site

Formulaire de contact

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.