Algorithmique au Lycée sous Python

 

Le nouveau programme 2017 nous propose d'utiliser le langage Python dès la seconde et d'oublier Algobox qui était alors préconisé au Lycée. Les TD et fiches de cours qui suivent proposent donc des activités sous Python (Pyt) mais les anciennes sont toujours à disposition sous algobox (Alg).

1. Python : sur poste ou online


 Python est un langage de programmation objet et multiplateformes.
Le langage Python est placé sous une licence libre proche de la licence BSD et fonctionne sur la plupart des plates-formes informatiques, des supercalculateurs aux ordinateurs centraux, de Windows à Unix avec notamment GNU/Linux en passant par macOS, ou encore Android, iOS, et aussi avec Java ou encore .NET.

1a. Installer Python sur un ordinateur

Pour installer Python :

  1. Rendez-vous sur le site Python.org et choisissez votre OS.
  2. Télécharger la version de votre choix Windows ou IOs.

Il est utile d'installer un logiciel nommé IDE (environnement de développement) afin de faciliter l'utilisation de Python. De nombreux sont disponibles (liste IDE Python)

Python sous Windows ou Mac OS

  1. En téléchargeant la version Python du site Python.org, vous pouvez alors directement coder grâce au logiciel natif IDLE  « Integrated DeveLopment Environment »
    Voici un exemple d'utilisation du debugger IDLE présent avec l'installation de Python :
    https://www.cs.uky.edu/
      
  2. Anaconda : https://www.anaconda.com/
    La distribution anaconda (Python Scientific Distributions) présente l'avantage d'être disponible sous Windows/macOS et Linux.
    Elle intègre le logiciel Spyder (environnement de développement), plus sophistiqué que le simple IDLE natif, et facilite l'importation de modules. Elle intègre plus de 250 modules scientifiques.

1b. Python en ligne

Plusieurs sites proposent la possibilité de programmer directement sur une console de votre navigateur. Les avantages de cette solution sont nombreux, surtout pour un établissement scolaire.

  1. Pas besoin d'installer de logiciel ;
  2. Les mises à jour sont automatiques ;
  3. Les travaux sont enregistrés et accessibles partout ;
  4. On peut partager son travail, avec son professeur par exemple.

Voici des sites gratuits en version Beginner :

Le choix du Prof

  1. Repl.ithttps://repl.it/
    Plusieurs langages de programmations sont proposés, on peut s'inscrire en tant que professeur et créer des classes. Le module turtle y est disponible pour des tracés dynamiques.
    L'Initiation à Python de Nicolas Poulain (groupe GIPTIC Paris) propose une prise en main utilisant repl.it : https://www.ac-paris.fr/

 Mais il y a aussi :

  • PythonAnywhere : https://www.pythonanywhere.com/
    Des limitations gênantes en version gratuite comme la limitation du temps de connection. Possibilité d'enregistrer les programmes mais pas encore de faire des graphiques (avec turtle). On peut cependant produire des graphiques au format.png avec le module pylab.
      
  • Site officiel : Python.org
    On peut aussi directement commencer à programmer en utilisant la console (cliquez sur Launch Interactive Shell).
    Par contre on ne peut pas enregistrer le travail effectué, il faut faire un copier/coller sur une page WordPad par exemple.

1c. Python sur Tablettes ou smartphones

On peut programmer directement sur ces supports en se connectant aux sites précédemment cités ou en téléchargeant certaines applications intéressantes : (en proposer ici)

Sur IOS (Apple)
  1. Python3python apps apple python3  By sutheesh sukumaran (This app is only available on the App Store for iOS devices).
Sur Androide
  1. QPythonpython_apps_androide_qpython.png  . Site de développeurs très complet

2. Algorithmique : documents officiels et programmes


Documentations et tutoriels


  • Giptic Paris
  • Un tutoriel de référence : http://mathprepa.fr/
    M. Jean Michel Ferrard, professeur de mathématiques en MPSI au lycée Saint-Louis (Paris), met à la disposition un document permettant une découverte de Python, tant pour les enseignants que pour les élèves.
     
  • OpenClassroomhttps://openclassrooms.com/ apprenez à programmer en Python
    Un tutoriel très riche mais assez "verbeux" ...

 

Les ressources Python de Math93.com


 

Compléments



 

 

Articles Connexes