Python initiation

Développer le socle de compétences de base en développement Python.

Objectifs

  • Identifier les usages courants du langage
  • Mettre en pratique le scripting en Python
  • Structurer votre code en fonction, classes et modules
  • Utiliser des modules existants
  • Décrire la programmation réseau avec Python
  • Expérimenter la programmation objet en Python.

Pour qui

  • Développeurs

Pré-requis

  • Connaître un langage de programmation.

Contenu de la formation

Python initiation

Introduction

  • Historique
  • Environnement de travail
  • Champs d’application
  • Scripts, fonctions et classes
  • Versions architectures et plateformes pour Python
  • Editeurs et environnements de développement (IDE)
  • Installation et configuration de Python
  • Conformité du codage à PEP8
  • Travaux pratiques : Acquisition de l’environnement de développement, Configuration de l’installation
 

Programme type

  • Programme minimal et point d’entrée
  • Extension basée sur les packages : import
  • Lancement de programmes et passage d’arguments
  • Versions compilées de Python
    • .py
    • .pyc
  • Console Python
  • Encoding : utf-8
  • Travaux pratiques :  Ecriture d’un premier programme de base Python, Echange avec la console
 

Types de bases

  • Typage faible
  • Booléens, numériques
  • Les chaînes de caractères
  • Conversions de types, casting
  • Types agrégés : Tuples, List, Set et dictionnaires
  • Travaux pratiques :  Sur le programme Python démarré, travail sur les types de variable en Python, Ajout de tableaux et travail sur ceux-ci
 

Les instructions de base

  • Commentaires sur une ligne # ou plus «  » »
  • Notion de blocs et indentations
  • Les opérateurs
    • Affectation
    • Arithmétique
    • Logiques
    • Relationnels
  • Saisie et affichage : input, print et formatage
  • Structure conditionnelle
  • Les structures de boucle : While, For, Range()
  • Break et continue
  • La gestion des exceptions
  • L’import de modules
  • Travaux pratiques : Suite du travail sur le programme Python, Utilisation des structures de contrôle, Ajout de la gestion des exceptions et compréhension des modules
 

Procédures et fonctions

  • def(), arguments et valeur de retour
  • Variables globales et l’instruction globale
  • Arguments par défaut, *args et **kwargs –
  • Fonctions lambda
  • Travaux pratiques : Définition et exploitation de nouvelles fonctions avec passage de paramètres et types de retour, Ecriture de fonctions lambda, compréhension de l’avantage d’utiliser celles-ci
 

Gestion des fichiers

  • Gestion de fichiers et répertoires
  • Accès séquentiel, aléatoire
  • Le module os, os.path, shutil, zlib
  • Travaux pratiques : Création d’un nouveau programme qui accède aux fichiers et répertoires, différents types d’accès étudiés, Travail sur les modules standards
 

Les modules

  • Définition de modules et instruction import
  • Modules en tant que fichier py et en tant que répertoire
  • Résolution des modules
  • Module et programme : __main__
  • Installation de modules : pip, easy_install
  • Travaux pratiques : Utilisation de modules systèmes, Création de modules regroupant plusieurs fonctions écrites en cours
 

Les classes

  • Approche objets
  • Classes et instances / objets : self
  • Constructeur : __init__
  • Données et méthodes membres
  • Héritage multiple
  • Travaux pratiques : Dans un nouveau programme, création de classes simples, instanciation de celles-ci pour en récupérer des objets, Ajout de méthodes et de propriétés, Ajout de l’héritage et travail sur ce modèle
 

Les librairies Python

  • Accès aux bases de données relationnelles
  • Programmation graphique UI avec Tkinter
  • Travaux pratiques : Création d’un programme d’interface utilisateur utilisant la librairie Tkinter, Ajout dans ce programme d’un accès à une base de données relationnelle puis exploitation de cet accès
 

Mise au point de programme

  • Débogage : exécution pas à pas
 

Python et le Web

  • Scripts Python en tant que Common Gateway Interface CGI
  • Introduction au Framework Django
  • Travaux pratiques : Ecriture d’une petite application Web en tant que Common Gateway Interface (CGI), Création d’une application simple avec Django, le framework Web de Python

Nos prochaines sessions