Un cours de David Beazley (https://www.dabeaz.com)
Droit d'auteur (C) 2007-2024
Un cours basé sur des exercices sur la programmation Python avancée qui a été testé plusieurs centaines de fois sur le circuit de formation en entreprise pendant plus d'une décennie. Écrit par David Beazley, auteur du Python Cookbook, 3e édition (O'Reilly) et Python Distilled (Addison-Wesley). Publié sous licence Creative Commons. Sans publicités, suivi, pop-ups, newsletters et IA.
Tout dans ce cours devrait fonctionner avec la dernière version de Python, mais sachez que le cours cible principalement l'ensemble des fonctionnalités de Python 3.6. En tant que tel, certaines fonctionnalités modernes ne sont pas couvertes. Honnêtement, cela ne devrait pas vous affecter beaucoup, à moins que vous n'essayiez d'écrire du code incroyablement intelligent.
Ce cours s'adresse aux programmeurs Python qui souhaitent aller au-delà des scripts courts pour écrire des programmes plus sophistiqués. Pour ce faire, il est utile de mieux comprendre les techniques de programmation utilisées dans les bibliothèques et frameworks populaires. Ainsi, ce cours s'adresse principalement aux programmeurs qui souhaitent construire un modèle mental plus complet du langage Python lui-même et de son fonctionnement. À terme, l’objectif est de pouvoir appliquer ces connaissances à vos propres projets.
Vous connaissez déjà Python. Ce n'est pas un cours pour débutants. Pour plus de matériel d’introduction, vous pouvez envisager le cours Pratique de programmation Python.
Pour suivre le cours, vous devez d'abord créer/cloner le dépôt GitHub sur votre propre machine.
Il est supposé que vous travaillez localement dans un environnement de développement Python approprié. Cela signifie une installation correcte de Python, un éditeur/IDE et tout autre outil que vous installeriez normalement pour travailler sur Python. En raison de l’utilisation de plusieurs fichiers et importations de modules, l’utilisation de Notebooks n’est pas recommandée.
Le fichier PythonMastery.pdf
contient des diapositives de présentation détaillées. Les exercices du cours et les horaires proposés sont clairement indiqués. Vous voudrez le garder à vos côtés (je vous recommande de le télécharger et de le visualiser avec une visionneuse PDF locale). Commencez ici !
Le répertoire Exercises/ contient tous les exercices du cours.
Le répertoire Solutions/ contient un code de solution entièrement élaboré.
Le répertoire Data/ contient quelques fichiers de données utilisés pendant le cours.
Le cours était initialement dispensé sur 4 à 5 jours dans une salle de classe en personne avec un mélange de cours magistraux et d'exercices pratiques. La réussite du cours nécessitera probablement 30 à 50 heures de travail. Les exercices ont tendance à s’appuyer les uns sur les autres. Des solutions sont toujours fournies au cas où vous seriez bloqué.
Le cours Advanced Python Mastery suggérait souvent des didacticiels plus approfondis sur des sujets sélectionnés. Ceux-ci ont été présentés lors de la conférence PyCon et pourraient être intéressants :
Q : Des vidéos sont-elles disponibles ?
R : Non. Vous pourrez lire plus rapidement les diapositives de présentation qui contiennent des informations techniques. Cependant, la vidéo Python Programming Language: LiveLessons disponible sur le site Safari d'O'Reilly est étroitement liée au matériel de ce cours.
Q : Puis-je utiliser ces supports dans mon propre cours ?
R : Oui. Je vous demande simplement de bien vouloir donner une attribution appropriée.
Q : Acceptez-vous les rapports de bogues ou les demandes d'extraction ?
R : Si vous avez trouvé un bug, veuillez le signaler ! Cependant, je ne cherche pas à élargir ou à réorganiser le contenu du cours avec de nouveaux sujets ou exercices.
Q : Les diapositives de la présentation sont-elles disponibles dans un format autre que PDF ?
R : Non.
Q : Existe-t-il un forum/chat où l'on peut discuter du cours ?
R : Vous pouvez utiliser les discussions GitHub pour discuter du cours.
Q : Pourquoi le sujet/l'outil/la bibliothèque X n'a-t-il pas été abordé ?
R : Le cours a été conçu pour être suivi dans un format intense de 4 jours en personne. Il n’est tout simplement pas possible de tout couvrir. En tant que tel, le cours se concentre principalement sur le langage Python de base, et non sur les bibliothèques ou les outils tiers.
Q : Pourquoi les fonctionnalités telles que la saisie, l'asynchrone ou la correspondance de modèles ne sont-elles pas couvertes ?
R : Il s’agit principalement d’une question de calendrier et de portée. Le matériel de cours a été principalement développé avant la pandémie et représente Python tel qu’il était à cette époque. Certains sujets (par exemple, la saisie ou l'asynchrone) sont suffisamment complexes pour être mieux abordés individuellement dans un cours séparé.
Q : Envisagez-vous de moderniser le cours ?
R : J'ai l'intention que tout ce qui est contenu dans le cours s'applique à la dernière version de Python. À moins que Python n'apporte des modifications rétrocompatibles au langage principal, cela devrait tenir. Bien que le cours ne couvre pas toutes les nouvelles fonctionnalités, je n'exclus pas de futurs changements. Cependant, cela dépend beaucoup de mon temps disponible et de mon intérêt. Donc je ne fais aucune promesse.
Q : Pourquoi avez-vous publié le cours ?
R : Ce cours était largement enseigné avant la pandémie. Post-pandémie, mon enseignement s'est réorienté vers les projets et les fondamentaux de l'informatique. Cependant, pourquoi laisser un bon cours languir sur mon ordinateur ?
Q : Comment puis-je aider ?
R : Si vous aimez le cours, la meilleure façon de le soutenir est d’en parler à d’autres personnes.
>>>
Maîtrise avancée de Python
...
Un cours par dabeaz
...
Droit d'auteur 2007-2023
. Ce travail est sous licence internationale Creative Commons Attribution-ShareAlike 4.0.