.. meta:: :description lang=en: Advice to start learning Python :description lang=fr: Recommandation pour commencer à apprendre Python ################################################### Recommandations pour commencer à apprendre Python ################################################### Pour se lancer et apprendre Python, je recommande… ---------------------------------------------------- .. note:: Qu'est-ce que Python ? Un `langage de programmation `_ très populaire. Gratuit, libre, multi-plateforme, simple à apprendre, écrire et lire. .. seealso:: Un site de référence ? Ce site en français est une référence pour l'installation et l'utilisation de Python, en prépa scientifique (CPGE) : `python-prepa.github.io `_. Leur page `pour installer Python `_ est très bien rédigée. #. L'installeur `Anaconda `_, qui permet de "tout" installer en un seul clic (un seul gros fichier de presque 400 Mo, gratuit), sur Windows, Linux ou Mac OS. `Canopy (par Enthougt) `_ est une excellente alternative pour installer Python en un clic, comme décrit par cette vidéo : .. raw:: html
#. Pour écrire des programmes Python, `Spyder `_ (avec `IPython `_) est une combinaison simple mais efficace. Surtout pour faire du Python numérique/scientifique. L'interface utilisateur ressemble assez à celle de MATLAB (code à gauche, sortie à droite, un bouton vert à cliquer pour exécuter *etc*), et le logiciel entier est vraiment parfait. Seule la *recherche d'aide* est (un peu) moins bien que MATLAB, le reste me semble (objectivement) mieux conçu pour Spyder. Mais une recherche sur Internet (avec `DuckDuckGo `_ bien sûr, et pas Gouuuugle) marche bien généralement. #. Je recommande aussi d'essayer les `Notebooks Jupyter `_ qui proposent une interface dans un navigateur, pour éditer (notamment) du Python. Vous pouvez essayer ici : ``_. #. Et vous pouvez utiliser `DevDocs.io `_ pour chercher efficacement la documentation, et `Zeal Docs `_ pour un accès hors ligne (sans Internet). #. Un éditeur plus complet de niveau professionnel est `PyCharm par JetBrains `_, moins facile à prendre en main mais PyCharm est très puissant ! #. D'autres éditeurs excellents pour Python sont `Visual Studio Code `_ (mon nouveau favori !), `Sublime Text `_, `GNU Emacs `_ ou `vi/vim/gvim/neovim etc `_. Ils proposent tous une excellente intégration avec Python (avec toutes les fonctionnalités dont vous pourriez rêver), après avoir installé un certain greffon ou un groupe de greffon (ou plugin, ou package ou extension, ils ont des noms différents selon les éditeurs mais le même concept). .. seealso:: Il y a des douzaines d'éditeurs solides pour Python. Un éditeur récent et très approprié pour les débutants est `Thonny `_ (présenté dans `cet article `_). #. Pour apprendre Python, `les bases sont bien abordées ici (en anglais) `_ (et dans les pages suivantes). Sachant que la plupart des éléments de syntaxes et des concepts sont très faciles d'approche, en particulier si vous avez déjà une expérience de programmation. #. Si vous débutez en programmation ou si vous n'êtes pas familier avec tous les concepts (récursions, boucles, classes, etc), vous pouvez utiliser (gratuitement) le merveilleux site `PythonTutor.com `_ pour visualiser vos programmes et leurs exécutions. #. Pour *« faire du numérique »*, le standard de facto est la combinaison `NumPy/SciPy `_ + `MatPlotLib `_. Tout ça est installé avec `Anaconda`_, et marche parfaitement tout de suite après l'installation. Un `bon tutoriel pour NumPy/SciPy est disponible `_ et un autre apprendre `comment faire des dessin avec MatPlotLib `_ (écrit par deux français du Labri !). La page `"NumPy for MATLAB Users" `_ peut aussi aider si vous connaissez déjà MatLab. `Ce cours en ligne donne beaucoup de détails pour la prise en main de Python en remplacement de MATLAB. `_ (sur `RealPython.com `_). #. Et si vous voulez des exemples de ce à quoi Python peut servir, jetez un coup d'œil à `mes notebooks Python `_, ou aux notebooks de `Peter Norvig (pytudes) `_. #. Un très bon site Web pour apprendre des conseils hebdomadaires sur Python est le blog `Real Python `_. ------------------------------------------------------------------------------ .. seealso:: Cet article, en anglais, est une excellente présentation pour apprendre Python : `dataquest.io/blog/learn-python-the-right-way `_. .. seealso:: Cet `article de blog `_ par `Philip Guo `_ est aussi intéressant, il explique pourquoi Python est un excellent choix de langage de programmation pour commencer à programmer et découvrir l'informatique. .. seealso:: Ces listes (en anglais) donnent aussi de très bons conseils, voir `kirang89/pycrumbs `_, `svaksha/pythonidae `_, `vinta/awesome-python `_. .. note:: MATLAB est une marque déposée de MathWorks ®. Et Python c'est super ! .. (c) Lilian Besson, 2011-2021, https://bitbucket.org/lbesson/web-sphinx/