Un formateur est un programme qui formate votre code, c’est-à-dire qu’il le modifie pour qu’il soit conforme à un certain style.
Les formateurs les plus populaires pour Python sont autopep8, black, et Ruff.
Tous peuvent être intégrés avec VS Code pour formater votre code à la demande ou lors de la sauvegarde.
Je recommande d’utiliser Ruff, par la même entreprise que uv.
Démonstration !
Documenter / commenter le code
Le code est plus souvent lu que écrit. - Guido van Rossum (créateur du langage Python)
Le code formaté est bien, mais ce n’est pas toujours suffisant pour le rendre lisible.
Vous devriez commenter votre code lorsque c’est approprié.
Un commentaire en Python commence par le caractère #.
Il est également courant d’écrire des commentaires multiligne en utilisant """, ce qui crée en fait une chaîne.
Exemple
# Ceci est un exemple de commentaireimport math # Un commentaire peut également apparaître à la fin d'une ligne."""Ceci est un commentaire multiligne.C'est en fait une chaîne, mais comme elle n'est pas affectée à une variable,elle n'a aucun effet sur le code.Selon PEP8, les commentaires ne devraient pas dépasser 72 caractères (s'ils sont plus longs,se diviser sur plusieurs lignes)."""
Quand commenter
En haut d’un fichier pour décrire ce que le code dans le fichier fait.
Pour décrire une section spécifique du code.
Pour décrire des algorithmes afin de les rendre plus faciles à lire et à comprendre.
Pour ajouter des balises dans le code :
# TODO : ajouter une nouvelle fonctionnalité ici.
Quand documenter
Lorsque vous pensez que vous réutiliserez le code à l’avenir (votre futur moi vous en remerciera)
Lorsque vous faites partie d’une équipe ou que vous voulez partager votre code avec d’autres.
La documentation en Python est souvent générée avec Sphinx ou mkdocs
Test du code
Les tests unitaires sont une méthode de test logiciel par laquelle des unités individuelles de code source sont testées pour déterminer si elles sont adaptées à l’utilisation.
Écrire des tests peut sembler ennuyeux au début, mais cela vous aide vraiment à trouver des problèmes plus rapidement—en particulier les régressions (casser quelque chose qui fonctionnait auparavant).
Un processus qui met les tests au premier plan. Divisez les fonctionnalités à coder en petites unités (c’est-à-dire des fonctions). Ensuite, pour chaque fonctionnalité :
Ajoutez un test.
Exécutez tous les tests. Le nouveau test devrait échouer (comme lorsque vous commencez le devoir).
Écrivez le code le plus simple qui fait passer le nouveau test.
Tous les tests devraient maintenant passer.
Refactorisez (c’est-à-dire améliorez votre code) au besoin, assurez-vous que les tests passent toujours.
Utile pour les fonctions de type mathématique, les fonctions de traitement de données, etc.
Débogage
Le débogage est le processus de recherche et de résolution des bugs (défauts ou problèmes qui empêchent le bon fonctionnement) au sein des programmes informatiques.
Une façon simple de déboguer est d’utiliser print() pour afficher les valeurs des variables, mais cela a des limites.
Les exceptions en Python se produisent lorsqu’il y a une erreur lors de l’exécution du code :
print(5/0)
---------------------------------------------------------------------------ZeroDivisionError Traceback (most recent call last)
Cell In[1], line 1----> 1print(5/0)
ZeroDivisionError: division by zero
Exceptions (2)
Vous pouvez lever (raise) vos propres exceptions pour signaler les erreurs que vous détectez dans votre code :
error =Trueif error:raiseException("Il y avait une erreur")
---------------------------------------------------------------------------Exception Traceback (most recent call last)
Cell In[2], line 3 1 error =True 2if error:
----> 3raiseException("Il y avait une erreur")
Exception: Il y avait une erreur
Exceptions (3)
Parfois, il est utile d’attraper et de gérer les exceptions :
x =0try: a =5/ xexceptException:print("J'ai eu une exception, mais je ne plante pas.")print("Tout va bien !")
J'ai eu une exception, mais je ne plante pas.
Tout va bien !
Exceptions (4)
L’ensemble complet de clauses est :
try : exécutez ce code.
except : exécutez lorsque qu’il y a une exception.
else : exécutez lorsqu’il n’y a pas d’exceptions.
finally : exécutez toujours ce code à la fin.
Exceptions (5)
Il est préférable d’être aussi spécifique que possible lors de la capture des exceptions :
x =0try: a =5/ xexceptZeroDivisionError:print("J'ai eu une ZeroDivisionError")
J'ai eu une ZeroDivisionError
Le code ci-dessus continuera s’il y a une ZeroDivisionError, mais plantera s’il y a un autre type d’erreur.
Utiliser l’IAG pour l’assistance à la programmation
Poser des questions efficacement
La précision compte.
Fournir un contexte aide.
Mettre en évidence des exemples
Mettez en évidence votre définition de code, par exemple en utilisant ``` ou un autre délimiteur.
Interrogation itérative
Commencez large, puis affinez.
Affinez en fonction des résultats du modèle.
Démonstration!
Exemples concrets
Débogage de code.
Brainstorming d’algorithmes.
Explication des concepts de code.
GitHub Copilot
Introduction à GitHub Copilot
Suggère du code pendant que vous tapez.
Paneau latéral pour chat et agent
Avantages de Copilot
Accélère la programmation.
Découvrez de nouvelles bibliothèques/fonctions.
Apprenez les meilleures pratiques.
Fonctionne avec Markdown
Version gratuites
Limitations et pièges potentiels
Ne remplace pas le jugement humain.
Vérifiez l’exactitude, surtout dans les tâches critiques.
Vérifiez l’exactitude, surtout dans les tâches critiques.
Vérifiez l’exactitude, surtout dans les tâches critiques.
Vérifiez l’exactitude, surtout dans les tâches critiques.
(Répété pour l’importance) Vérifiez l’exactitude.
NE FAITES PAS CONFIANCE AUX IAGs.
Pour utiliser l’IAG correctement, il faut connaître assez de Python pour comprendre ce qu’il se passe.
Conseils pratiques pour les étudiants en finance empirique
Stratégies de “prompting”
Soyez spécifique.
Offrez un contexte clair.
Ajuster en fonction des résultats.
Vérification et validation
Les IAG ne sont pas infaillibles.
Vérifiez, surtout dans les scénarios financiers!
Éthique et originalité
LLMs pour assistance, pas pour copier sans réfléchir.