Apprendre à programmer avec Python par Date de publication : 24/03/2008 Dernière mise à jour : 29/04/2008 Adaptation libre de "How to think like a computer scientist" de Allen B. Downey, Jeffrey Elkner et Chris MeyersApprendre à programmer avec Python par Prélude Introduction Choix d'un premier langage de programmation Présentation du langage Python, par Stéfane Fermigier. Plusieurs versions différentes ? Distribution de Python - Bibliographie Pour le professeur qui souhaite utiliser cet ouvrage comme support de cours Exemples du livre Remerciements Chapitre 1 : Penser comme un programmeur 1.1 - La démarche du 1.2 - Langage machine, langage de programmation 1.3 - Compilation et interprétation 1.4 - Mise au point d'un programme - Recherche des erreurs (« debug ») 1.4.1 - Erreurs de syntaxe 1.4.2 - sémantiques 1.4.3 - Erreurs à l'exécution 1.5 - Recherche des erreurs et expérimentation 1.6 - Langages naturels et langages formels Chapitre 2 : Premiers pas 2.1 - Calculer avec Python 2.2 - Données et variables 2.3 - Noms de et mots réservés 2.4 - Affectation (ou assignation) 2.5 - Afficher la valeur d'une variable 2.6 - Typage des variables 2.7 - Affectations multiples 2.8 - Opérateurs et expressions 2.9 - Priorité des opérations 2.10 - Composition Chapitre 3 : Contrôle du flux d'instructions 3.1 - Séquence d'instructions 3.2 - Sélection ou exécution conditionnelle 3.3 - Opérateurs de comparaison 3.4 - Instructions composées # Blocs d'instructions 3.5 - imbriquées 3.6 - ...
Apprendre à programmer avec Python
par
Date de publication : 24/03/2008
Dernière mise à jour : 29/04/2008
Adaptation libre de "How to think like a computer scientist" de Allen B. Downey,
Jeffrey Elkner et Chris MeyersApprendre à programmer avec Python par
Prélude
Introduction
Choix d'un premier langage de programmation
Présentation du langage Python, par Stéfane Fermigier.
Plusieurs versions différentes ?
Distribution de Python - Bibliographie
Pour le professeur qui souhaite utiliser cet ouvrage comme support de cours
Exemples du livre
Remerciements
Chapitre 1 : Penser comme un programmeur
1.1 - La démarche du
1.2 - Langage machine, langage de programmation
1.3 - Compilation et interprétation
1.4 - Mise au point d'un programme - Recherche des erreurs (« debug »)
1.4.1 - Erreurs de syntaxe
1.4.2 - sémantiques
1.4.3 - Erreurs à l'exécution
1.5 - Recherche des erreurs et expérimentation
1.6 - Langages naturels et langages formels
Chapitre 2 : Premiers pas
2.1 - Calculer avec Python
2.2 - Données et variables
2.3 - Noms de et mots réservés
2.4 - Affectation (ou assignation)
2.5 - Afficher la valeur d'une variable
2.6 - Typage des variables
2.7 - Affectations multiples
2.8 - Opérateurs et expressions
2.9 - Priorité des opérations
2.10 - Composition
Chapitre 3 : Contrôle du flux d'instructions
3.1 - Séquence d'instructions
3.2 - Sélection ou exécution conditionnelle
3.3 - Opérateurs de comparaison
3.4 - Instructions composées # Blocs d'instructions
3.5 - imbriquées
3.6 - Quelques règles de syntaxe Python
3.6.1 - Les limites des instructions et des blocs sont définies par la mise en page
3.6.2 - Instruction composée = En-tête , double point , bloc d'instructions indenté
3.6.3 - Les espaces et les commentaires sont normalement ignorés
Chapitre 4 : Instructions répétitives.
4.1 - Ré-affectation
4.2 - Répétitions en boucle - l'instruction while
4.3 - Élaboration de tables
4.4 - Construction d'une suite mathématique
4.5 - Premiers scripts, ou : Comment conserver nos programmes ?
4.6 - Remarque concernant les caractères accentués et spéciaux :
Chapitre 5 : Principaux types de données
5.1 - Les données numériques
5.1.1 - Les types « integer » et « long »
5.1.2 - Le type « float »
5.2 - Les données alphanumériques
5.2.1 - Le type « string » (chaîne de caractères)
5.2.2 - Accès aux caractères individuels d'une chaîne
- 2 -
Ce document est issu de http://www.developpez.com et reste la propriété exclusive de son auteur. La copie, modification et/ou distribution par
quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.
http://python.developpez.com/cours/TutoSwinnen/Apprendre à programmer avec Python par
5.2.3 - Opérations élémentaires sur les chaînes
5.3 - Les listes (première approche)
Chapitre 6 : Fonctions prédéfinies
6.1 - Interaction avec l'utilisateur : la fonction input()
6.2 - Importer un module de fonctions
6.3 - Un peu de détente avec le module turtle
6.4 - Véracité/fausseté d'une expression
6.5 - Révision
6.5.1 - Contrôle du flux - Utilisation d'une liste simple
6.5.2 - Boucle while - Instructions imbriquées
Chapitre 7 : Fonctions originales
7.1 - Définir une fonction
7.1.1 - Fonction simple sans paramètres
7.1.2 - avec paramètre
7.1.3 - Utilisation d'une variable comme argument
7.1.4 - Fonction avec plusieurs paramètres
7.2 - Variables locales, variables globales
7.3 - « Vraies » fonctions et procédures
7.4 - Utilisation des fonctions dans un script
7.5 - Modules de
7.6 - Typage des paramètres
7.7 - Valeurs par défaut pour les paramètres
7.8 - Arguments avec étiquettes
Chapitre 8 : Utilisation de fenêtres et de graphismes
8.1 - Interfaces graphiques (GUI)
8.2 - Premiers pas avec Tkinter
8.3 - Programmes pilotés par des événements
8.3.1 - Exemple graphique : tracé de lignes dans un canevas
8.3.2 - : deux dessins alternés
8.3.3 - Exemple graphique : calculatrice minimaliste
8.3.4 - : détection et positionnement d'un clic de souris
8.4 - Les classes de widgets Tkinter
8.5 - Utilisation de la méthode grid() pour contrôler la disposition des widgets
8.6 - Composition d'instructions pour écrire un code plus compact
8.7 - Modification des propriétés d'un objet - Animation
8.8 - Animation automatique - Récursivité
Chapitre 9 : Les fichiers
9.1 - Utilité des fichiers
9.2 - Travailler avec des fichiers
9.3 - Noms de fichiers - Répertoire courant
9.4 - Les deux formes d'importation
9.5 - Écriture séquentielle dans un fichier
9.6 - Lecture d'un fichier
9.7 - L'instruction break pour sortir d'une boucle
9.8 - Fichiers texte
9.9 - Enregistrement et restitution de variables diverses
9.10 - Gestion des exceptions. Les instructions try # except - else
Chapitre 10 : Approfondir les structures de données
10.1 - Le point sur les chaînes de caractères
10.1.1 - Concaténation, Répétition
10.1.2 - Indiçage, extraction, longueur
10.1.3 - Parcours d'une séquence. L'instruction for ... in ...
10.1.4 - Appartenance d'un élément à une séquence. L'instruction in utilisée seule
10.1.5 - Les chaînes sont des séquences non modifiables
- 3 -
Ce document est issu de http://www.developpez.com et reste la propriété exclusive de son auteur. La copie, modification et/ou distribution par
quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.
http://python.developpez.com/cours/TutoSwinnen/Apprendre à programmer avec Python par
10.1.6 - Les chaînes sont comparables
10.1.7 - Classement des caractères
10.1.8 - Les chaînes sont des objets
10.1.9 - Formatage des chaînes de caractères
10.2 - Le point sur les listes
10.2.1 - Définition d'une liste # Accès à ses éléments
10.2.2 - Les listes sont modifiables
10.2.3 - Les listes sont des objets
10.2.4 - Techniques de « slicing » avancé pour modifier une liste
10.2.5 - Création d'une liste de nombres à l'aide de la fonction range()
10.2.6 - Parcours d'une liste à l'aide de for, range() et len()
10.2.7 - Une conséquence du typage dynamique
10.2.8 - Opérations sur les listes
10.2.9 - Test d'appartenance
10.2.10 - Copie d'une liste
10.2.11 - Nombres aléatoires - Histogrammes
10.3 - Les tuples
10.4 - Les dictionnaires
10.4.1 - Création d'un dictionnaire
10.4.2 - Opérations sur les dictionnaires
10.4.3 - Les dictionnaires sont des objets
10.4.4 - Parcours d'un dictionnaire
10.4.5 - Les clés ne sont pas nécessairement des chaînes de caractères
10.4.6 - Les dictionnaires ne sont pas des séquences
10.4.7 - Construction d'un histogramme à l'aide d'un dictionnaire
10.4.8 - Contrôle du flux d'exécution à l'aide d'un
Chapitre 11 : Classes, objets, attributs
11.1 - Utilité des classes
11.2 - Définition d'une classe élémentaire
11.3 - Attributs (ou variables) d'instance
11.4 - Passage d'objets comme arguments lors de l'appel d'une fonction
11.5 - Similitude et unicité
11.6 - Objets composés d'objets
11.7 - Objets comme valeurs de retour d'une fonction
11.8 - Les objets sont modifiables
Chapitre 12 : Classes, méthodes, héritage
12.1 - Définition d'une méthode
12.2 - La méthode « constructeur »
12.3 - Espaces de noms des classes et instances
12.4 - Héritage
12.5 - Héritage et polymorphisme
12.6 - Modules contenant des bibliothèques de classes
Chapitre 13 : Classes & Interfaces graphiques
13.1 - « Code des couleurs » : un petit projet bien encapsulé
13.2 - « Petit train » : héritage, échange d'informations entre classes
13.3 - « OscilloGraphe » : un widget personnalisé
13.4 - « Curseurs » : un widget composite
13.4.1 - Présentation du widget « Scale »
13.4.2 - Construction d'un panneau de contrôle à trois curseurs
13.5 - Intégration de widgets composites dans une application synthèse
Chapitre 14 : Et pour quelques widgets de plus ...
14.1 - Les « boutons radio »
14.2 - Utilisation des cadres (frames) pour la composition d'une fenêtre
14.3 - Comment déplacer des dessins à l'aide de la souris
- 4 -
Ce document est issu de http://www.developpez.com et reste la propriété exclusive de son auteur. La copie, modification et/ou distribution par
quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.
http://python.developpez.com/cours/TutoSwinnen/Apprendre à programmer avec Python par
14.4 - Python Mega Widgets
14.4.1 - « Combo Box »
14.4.2 - Remarque concernant l'entrée de caractères accentués
14.4.3 - « Scrolled Text »
14.4.4 - « Canvas »
14.4.5 - Barres d'outils avec bulles d'aide - expressions lambda
14.5 - Fenêtres avec menus
14.5.1 - Première ébauche du programme :
14.5.2 - Ajout de la rubrique « Musiciens »
14.5.3 - Ajout de la « Peintres » :
14.5.4 - Ajout de la rubrique « Options » :
Chapitre 15 : Analyse de programmes concrets
15.1 - Jeu des bombardes
15.1.1 - Prototypage d'une classe « Canon »
15.1.2 - Ajout de méthodes au prototype
15.1.3 - Développement de l'application
15.1.4 - Développements complémentaires
15.2 - Jeu de Ping
15.2.1 - Principe
15.2.2 - Programmation
Chapitre 16 : Gestion d'une base de données
16.1 - Les bases de données
16.1.1 - SGBDR - Le modèle client/serveur
16.1.2 - Le langage SQL - Gadfly
16.2 - Mise en oeuvre d'une base de données simple avec Gadfly
16.2.1 - Création de la base de
16.2.2 - Connexion à une base de données existante
16.2.3 - Recherches dans une base de données
16.2.4 - La requête select
16.3 - Ébauche d'un logiciel client pour MySQL
16.3.1 - Décrire la base de données dans un dictionnaire d'application
16.3.2 - Définir une classe d'objets-interfaces
16.3.3 - Construire un générateur de formulaires
16.3.4 - Le corps de l'application
Chapitre 17 : Applications web
17.1 - Pages web interactives
17.2 - L'interface CGI
17.2.1 - Une interaction CGI rudimentaire
17.2.2 - Un formulaire HTML pour l'acquisition des données
17.2.3 - Un script CGI pour le traitement des données
17.3 - Un serveur web en pur Python !
17.3.1 - Installation de Karrigell
17.3.2 - Démarrage du serveur :
17.3.3 - Ébauche de site web
17.3.4 - Prise en charge des sessions
17.3.5 - Autres développements
Chapitre 18 : Communications à travers un réseau
18.1 - Les sockets
18.2 - Construction d'un se