Apprenez à programmer en python, Study Guides, Projects, Research of Java Programming

Apprenez à programmer en python. Apprenez à programmer en python. Apprenez à programmer en python.

Typology: Study Guides, Projects, Research

2016/2017

Uploaded on 10/03/2017

mbahal
mbahal 🇨🇲

2 documents

1 / 266

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Apprenez à
programmer en
Python
Par prolixe
www.openclassrooms.com
Licence Creative Commons 6 2.0
Dernière mise à jour le 7/01/2013
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Partial preview of the text

Download Apprenez à programmer en python and more Study Guides, Projects, Research Java Programming in PDF only on Docsity!

Apprenez à

programmer en

Python

Par prolixe

www.openclassrooms.com

Licence Creative Commons 6 2. Dernière mise à jour le 7/01/

Sommaire

  • Sommaire
  • Lire aussi
    • Apprenez à programmer en Python
  • Partie 1 : Introduction à Python - Qu'est-ce que Python? - Un langage de programmation? Qu'est-ce que c'est? - La communication humaine - Mon ordinateur communique aussi! - Pour la petite histoire - À quoi peut servir Python? - Un langage de programmation interprété - Différentes versions de Python - Installer Python - Sous Windows - Sous Linux - Sous Mac OS X - Lancer Python - En résumé - Premiers pas avec l'interpréteur de commandes Python - Où est-ce qu'on est, là? - Vos premières instructions : un peu de calcul mental pour l'ordinateur - Saisir un nombre - Opérations courantes - En résumé - Le monde merveilleux des variables - C'est quoi, une variable? Et à quoi cela sert-il? - C'est quoi, une variable? - Comment cela fonctionne-t-il? - Les types de données en Python - Qu'entend-on par « type de donnée »? - Les différents types de données - Un petit bonus - Quelques trucs et astuces pour vous faciliter la vie - Première utilisation des fonctions - Utiliser une fonction - La fonction « type » - La fonction print - En résumé - Les structures conditionnelles - Vos premières conditions et blocs d'instructions - Forme minimale en if - Forme complète (if, elif et else) - De nouveaux opérateurs - Les opérateurs de comparaison - Prédicats et booléens - Les mots-clés and, or et not - Votre premier programme! - Avant de commencer - Sujet - Solution ou résolution - Correction - En résumé - Les boucles - En quoi cela consiste-t-il? - La boucle while - La boucle for - Un petit bonus : les mots-clés break et continue - Le mot-clé break - Le mot-clé continue - En résumé - Pas à pas vers la modularité (1/2) - Les fonctions : à vous de jouer - La création de fonctions - Valeurs par défaut des paramètres - Signature d'une fonction - L'instruction return - Les fonctions lambda - Syntaxe - Utilisation - À la découverte des modules - Les modules, qu'est-ce que c'est? - La méthode import - Utiliser un espace de noms spécifique - Une autre méthode d'importation : from … import … - Bilan - 2/ - En résumé
    • Pas à pas vers la modularité (2/2)
      • Mettre en boîte notre code
      • Fini, l'interpréteur?
      • Emprisonnons notre programme dans un fichier
      • Quelques ajustements
      • Je viens pour conquérir le monde… et créer mes propres modules
      • Mes modules à moi
      • Faire un test de module dans le module-même
      • Les packages
      • En théorie
      • En pratique
      • En résumé
    • Les exceptions
      • À quoi cela sert-il?
      • Forme minimale du bloc try
      • Forme plus complète
      • Exécuter le bloc except pour un type d'exception précis
      • Les mots-clés else et finally
      • Un petit bonus : le mot-clé pass
      • Les assertions
      • Lever une exception
      • En résumé
    • TP : tous au ZCasino
      • Notre sujet
      • Notre règle du jeu
      • Organisons notre projet
      • Le module random
      • Arrondir un nombre
      • À vous de jouer
      • Correction!
      • Et maintenant?
  • Partie 2 : La Programmation Orientée Objet côté utilisateur
    • Notre premier objet : les chaînes de caractères
      • Vous avez dit objet?
      • Les méthodes de la classe str
      • Mettre en forme une chaîne
      • Formater et afficher une chaîne
      • Parcours et sélection de chaînes
      • Parcours par indice
      • Sélection de chaînes
      • En résumé
    • Les listes et tuples (1/2)
      • Créons et éditons nos premières listes
      • D'abord c'est quoi, une liste?
      • Création de listes
      • Insérer des objets dans une liste
      • Suppression d'éléments d'une liste
      • Le parcours de listes
      • La fonction enumerate
      • Un petit coup d'œil aux tuples
      • Affectation multiple
      • Une fonction renvoyant plusieurs valeurs
      • En résumé
    • Les listes et tuples (2/2)
      • Entre chaînes et listes
      • Des chaînes aux listes
      • Des listes aux chaînes
      • Une application pratique
      • Les listes et paramètres de fonctions
      • Les fonctions dont on ne connaît pas à l'avance le nombre de paramètres
      • Transformer une liste en paramètres de fonction
      • Les compréhensions de liste
      • Parcours simple
      • Filtrage avec un branchement conditionnel
      • Mélangeons un peu tout cela
      • Nouvelle application concrète
      • En résumé
    • Les dictionnaires
      • Création et édition de dictionnaires
      • Créer un dictionnaire
      • Supprimer des clés d'un dictionnaire
      • Un peu plus loin
      • Les méthodes de parcours
      • Parcours des clés
      • Parcours des valeurs
      • Parcours des clés et valeurs simultanément
      • Les dictionnaires et paramètres de fonction
      • Récupérer les paramètres nommés dans un dictionnaire
      • Transformer un dictionnaire en paramètres nommés d'une fonction
      • En résumé
  • Sommaire 3/
    • Les fichiers
      • Avant de commencer
      • Mais d'abord, pourquoi lire ou écrire dans des fichiers?
      • Changer le répertoire de travail courant
      • Chemins relatifs et absolus
      • Lecture et écriture dans un fichier
      • Ouverture du fichier
      • Fermer le fichier
      • Lire l'intégralité du fichier
      • Écriture dans un fichier
      • Écrire d'autres types de données
      • Le mot-clé with
      • Enregistrer des objets dans des fichiers
      • Enregistrer un objet dans un fichier
      • Récupérer nos objets enregistrés
      • En résumé
    • Portée des variables et références
      • La portée des variables
      • Dans nos fonctions, quelles variables sont accessibles?
      • La portée de nos variables
      • Les variables globales
      • Le principe des variables globales
      • Utiliser concrètement les variables globales
      • En résumé
    • TP : un bon vieux pendu
      • Votre mission
      • Un jeu du pendu
      • Le côté technique du problème
      • Gérer les scores
      • À vous de jouer
      • Correction proposée
      • donnees.py
      • fonctions.py
      • pendu.py
      • Résumé
  • Partie 3 : La Programmation Orientée Objet côté développeur
    • Première approche des classes
      • Les classes, tout un monde
      • Pourquoi utiliser des objets?
      • Choix du modèle
      • Convention de nommage
      • Nos premiers attributs
      • Quand on crée notre objet…
      • Étoffons un peu notre constructeur
      • Attributs de classe
      • Les méthodes, la recette
      • Le paramètre self
      • Méthodes de classe et méthodes statiques
      • Un peu d'introspection
      • La fonction dir
      • L'attribut spécial dict
      • En résumé
    • Les propriétés
      • Qu'est-ce que l'encapsulation?
      • Les propriétés à la casserole
      • Les propriétés en action
      • Résumons le principe d'encapsulation en Python
      • En résumé
    • Les méthodes spéciales
      • Édition de l'objet et accès aux attributs
      • Édition de l'objet
      • Représentation de l'objet
      • Accès aux attributs de notre objet
      • Les méthodes de conteneur
      • Accès aux éléments d'un conteneur
      • La méthode spéciale derrière le mot-clé in
      • Connaître la taille d'un conteneur
      • Les méthodes mathématiques
      • Ce qu'il faut savoir
      • Tout dépend du sens
      • D'autres opérateurs
      • Les méthodes de comparaison
      • Des méthodes spéciales utiles à pickle
      • La méthode spéciale getstate
      • La méthode setstate
      • On peut enregistrer dans un fichier autre chose que des dictionnaires
      • Je veux encore plus puissant!
      • En résumé
    • L'héritage
      • Pour bien commencer
      • L'héritage simple
  • Sommaire 4/ - Petite précision - Deux fonctions très pratiques - L'héritage multiple - Recherche des méthodes - Retour sur les exceptions - Création d'exceptions personnalisées - En résumé
    • Derrière la boucle for
      • Les itérateurs
      • Utiliser les itérateurs
      • Créons nos itérateurs
      • Les générateurs
      • Les générateurs simples
      • Les générateurs comme co-routines
      • En résumé
    • TP : un dictionnaire ordonné
      • Notre mission
      • Spécifications
      • Exemple de manipulation
      • Tous au départ!
      • Correction proposée
      • Le mot de la fin
    • Les décorateurs
      • Qu'est-ce que c'est?
      • En théorie
      • Format le plus simple
      • Modifier le comportement de notre fonction
      • Un décorateur avec des paramètres
      • Tenir compte des paramètres de notre fonction
      • Des décorateurs s'appliquant aux définitions de classes
      • Chaîner nos décorateurs
      • Exemples d'applications
      • Les classes singleton
      • Contrôler les types passés à notre fonction
      • En résumé
    • Les métaclasses
      • Retour sur le processus d'instanciation
      • La méthode new
      • Créer une classe dynamiquement
      • La méthode que nous connaissons
      • Créer une classe dynamiquement
      • Définition d'une métaclasse
      • La méthode new
      • La méthode init
      • Les métaclasses en action
      • Pour conclure
      • En résumé
  • Partie 4 : Les merveilles de la bibliothèque standard
    • Les expressions régulières
      • Que sont les expressions régulières?
      • Quelques éléments de syntaxe pour les expressions régulières
      • Concrètement, comment cela se présente-t-il?
      • Des caractères ordinaires
      • Rechercher au début ou à la fin de la chaîne
      • Contrôler le nombre d'occurences
      • Les classes de caractères
      • Les groupes
      • Le module re
      • Chercher dans une chaîne
      • Remplacer une expression
      • Des expressions compilées
      • En résumé
    • Le temps
      • Le module time
      • Représenter une date et une heure dans un nombre unique
      • La date et l'heure de façon plus présentable
      • Récupérer un timestamp depuis une date
      • Mettre en pause l'exécution du programme pendant un temps déterminé
      • Formater un temps
      • Bien d'autres fonctions
      • Le module datetime
      • Représenter une date
      • Représenter une heure
      • Représenter des dates et heures
      • En résumé
    • Un peu de programmation système
      • Les flux standard
      • Accéder aux flux standard
      • Modifier les flux standard
      • Les signaux
      • Les différents signaux
  • Sommaire 5/ - Intercepter un signal - Interpréter les arguments de la ligne de commande - Accéder à la console de Windows - Accéder aux arguments de la ligne de commande - Interpréter les arguments de la ligne de commande - Exécuter une commande système depuis Python - La fonction system - La fonction popen - En résumé
    • Un peu de mathématiques
      • Pour commencer, le module math
      • Fonctions usuelles
      • Un peu de trigonométrie
      • Arrondir un nombre
      • Des fractions avec le module fractions
      • Créer une fraction
      • Manipuler les fractions
      • Du pseudo-aléatoire avec random
      • Du pseudo-aléatoire
      • La fonction random
      • randrange et randint
      • Opérations sur des séquences
      • En résumé
    • Gestion des mots de passe
      • Réceptionner un mot de passe saisi par l'utilisateur
      • Chiffrer un mot de passe
      • Chiffrer un mot de passe?
      • Chiffrer un mot de passe
      • En résumé
    • Le réseau
      • Brève présentation du réseau
      • Le protocole TCP
      • Clients et serveur
      • Les différentes étapes
      • Établir une connexion
      • Les sockets
      • Les sockets
      • Construire notre socket
      • Connecter le socket
      • Faire écouter notre socket
      • Accepter une connexion venant du client
      • Création du client
      • Connecter le client
      • Faire communiquer nos sockets
      • Fermer la connexion
      • Le serveur
      • Le client
      • Un serveur plus élaboré
      • Le module select
      • Et encore plus
      • En résumé
    • Des interfaces graphiques avec Tkinter
      • Présentation de Tkinter
      • Votre première interface graphique
      • De nombreux widgets
      • Les widgets les plus communs
      • Organiser ses widgets dans la fenêtre
      • Bien d'autres widgets
      • Les commandes
      • Pour conclure
      • En résumé
  • Partie 5 : Annexes
    • Écrire nos programmes Python dans des fichiers
      • Mettre le code dans un fichier
      • Exécuter notre code sur Windows
      • Sur les systèmes Unix
      • Préciser l'encodage de travail
      • Mettre en pause notre programme
      • En résumé
    • Distribuer facilement nos programmes Python avec cx_Freeze
      • En théorie
      • Avantages de cx_Freeze
      • En pratique
      • Installation
      • Utiliser le script cxfreeze
      • Le fichier setup.py
      • Pour conclure
      • En résumé
    • De bonnes pratiques
      • Pourquoi suivre les conventions des PEP?
      • La PEP 20 : tout une philosophie
  • Sommaire 6/ - La PEP 8 : des conventions précises - Introduction - Forme du code - Directives d'importation - Le signe espace dans les expressions et instructions - Commentaires - Conventions de nommage - Conventions de programmation - Conclusion - La PEP 257 : de belles documentations - Qu'est-ce qu'une docstring? - Les docstrings sur une seule ligne - Les docstrings sur plusieurs lignes
    • Pour finir et bien continuer
      • Quelques références
      • La documentation officielle
      • Le wiki Python
      • L'index des PEP (Python Enhancement Proposal)
      • La documentation par version
      • Des bibliothèques tierces
      • Pour créer une interface graphique
      • Dans le monde du Web
      • Un peu de réseau
      • Pour conclure
  • Lire aussi 7/

Apprenez à programmer en Python Par prolixe Mise à jour : 07/01/ Difficulté : Facile Ce tutoriel a pour but de vous initier au langage de programmation Python. Et comme le veut la coutume ici-bas, on démarre de zéro, dans la joie et la bonne humeur! La syntaxe claire et relativement intuitive de ce langage en fait un candidat idéal dans le cadre d'une introduction à la programmation. Ainsi, si vous n'avez jamais programmé en quelque langage que ce soit, si vous ne savez que très vaguement ce que cela signifie, Python est, me semble-t-il, un bon choix pour commencer votre apprentissage. Bonne lecture! Avantages de Python : facile à apprendre, à lire, à comprendre et à écrire ; portable (fonctionne sous de nombreux systèmes d'exploitation) ; adapté aussi bien pour des scripts, des petits ou gros projets ; doté d'une façade objet bien conçue et puissante ; possède une communauté active autour du langage ; et j'en passe… Un grand merci à 6pri1 pour sa relecture attentive et sa patience. Un merci tout aussi cordial à Nathan21 et Sergeswi qui ont fourni les icônes du tutoriel. Ce cours vous plaît? Si vous avez aimé ce cours, vous pouvez retrouver le livre " Apprenez à programmer en Python " du même auteur, en vente sur le Site du Zéro, en librairie et dans les boutiques en ligne. Vous y trouverez ce cours adapté au format papier avec une série de chapitres inédits. Plus d'informations

Lire aussi 8/

Une liste d'instructions? Qu'est-ce que c'est encore que cela? En schématisant volontairement, une instruction pourrait demander au programme de se fermer si vous cliquez sur la croix en haut à droite de votre écran, ou de rester en tâche de fond si tel est son bon plaisir. Toutefois, en langage machine, une telle action demande à elle seule un nombre assez important d'instructions. Mais bon, vous pouvez vous en douter, parler avec l'ordinateur en langage machine, qui ne comprend que le binaire, ce n'est ni très enrichissant, ni très pratique, et en tous cas pas très marrant. On a donc inventé des langages de programmation pour faciliter la communication avec l'ordinateur. Le langage binaire est uniquement constitué de 0 et de 1. « 01000010011011110110111001101010011011110111010101110010 », par exemple, signifie « Bonjour ». Bref, autant vous dire que discuter en binaire avec un ordinateur peut être long (surtout pour vous).

Les langages de programmation

Les langages de programmation sont des langages bien plus faciles à comprendre pour nous, pauvres êtres humains que nous sommes. Le mécanisme reste le même, mais le langage est bien plus compréhensible. Au lieu d'écrire les instructions dans une suite assez peu intelligible de 0 et de 1, les ordres donnés à l'ordinateur sont écrits dans un « langage », souvent en anglais, avec une syntaxe particulière qu'il est nécessaire de respecter. Mais avant que l'ordinateur puisse comprendre ce langage, celui-ci doit être traduit en langage machine (figure suivante). En gros, le programmeur « n'a qu'à » écrire des lignes de code dans le langage qu'il a choisi, les étapes suivantes sont automatisées pour permettre à l'ordinateur de les décoder. Il existe un grand nombre de langages de programmation et Python en fait partie. Il n'est pas nécessaire pour le moment de donner plus d'explications sur ces mécanismes très schématisés. Si vous n'avez pas réussi à comprendre les mots de vocabulaire et l'ensemble de ces explications, cela ne vous pénalisera pas pour la suite. Mais je trouvais intéressant de donner ces précisions quant aux façons de communiquer avec son ordinateur.

Pour la petite histoire

Python est un langage de programmation, dont la première version est sortie en 1991. Créé par Guido van Rossum , il a voyagé du Macintosh de son créateur, qui travaillait à cette époque au Centrum voor Wiskunde en Informatica aux Pays-Bas, jusqu'à se voir associer une organisation à but non lucratif particulièrement dévouée, la Python Software Foundation , créée en 2001. Ce langage a été baptisé ainsi en hommage à la troupe de comiques les « Monty Python ».

À quoi peut servir Python?

Python est un langage puissant, à la fois facile à apprendre et riche en possibilités. Dès l'instant où vous l'installez sur votre ordinateur, vous disposez de nombreuses fonctionnalités intégrées au langage que nous allons découvrir tout au long de ce livre. Il est, en outre, très facile d'étendre les fonctionnalités existantes, comme nous allons le voir. Ainsi, il existe ce qu'on appelle des bibliothèques qui aident le développeur à travailler sur des projets particuliers. Plusieurs bibliothèques peuvent ainsi être installées pour, par exemple, développer des interfaces graphiques en Python. Concrètement, voilà ce qu'on peut faire avec Python :

Partie 1 : Introduction à Python 10/

de petits programmes très simples, appelés scripts , chargés d'une mission très précise sur votre ordinateur ; des programmes complets, comme des jeux, des suites bureautiques, des logiciels multimédias, des clients de messagerie … des projets très complexes, comme des progiciels (ensemble de plusieurs logiciels pouvant fonctionner ensemble, principalement utilisés dans le monde professionnel). Voici quelques-unes des fonctionnalités offertes par Python et ses bibliothèques : créer des interfaces graphiques ; faire circuler des informations au travers d'un réseau ; dialoguer d'une façon avancée avec votre système d'exploitation ; … et j'en passe… Bien entendu, vous n'allez pas apprendre à faire tout cela en quelques minutes. Mais ce cours vous donnera des bases suffisamment larges pour développer des projets qui pourront devenir, par la suite, assez importants.

Un langage de programmation interprété

Eh oui, vous allez devoir patienter encore un peu car il me reste deux ou trois choses à vous expliquer, et je suis persuadé qu'il est important de connaître un minimum ces détails qui peuvent sembler peu pratiques de prime abord. Python est un langage de programmation interprété , c'est-à-dire que les instructions que vous lui envoyez sont « transcrites » en langage machine au fur et à mesure de leur lecture. D'autres langages (comme le C / C++) sont appelés « langages compilés » car, avant de pouvoir les exécuter, un logiciel spécialisé se charge de transformer le code du programme en langage machine. On appelle cette étape la « compilation ». À chaque modification du code, il faut rappeler une étape de compilation. Les avantages d'un langage interprété sont la simplicité (on ne passe pas par une étape de compilation avant d'exécuter son programme) et la portabilité (un langage tel que Python est censé fonctionner aussi bien sous Windows que sous Linux ou Mac OS, et on ne devrait avoir à effectuer aucun changement dans le code pour le passer d'un système à l'autre). Cela ne veut pas dire que les langages compilés ne sont pas portables, loin de là! Mais on doit utiliser des compilateurs différents et, d'un système à l'autre, certaines instructions ne sont pas compatibles, voire se comportent différemment. En contrepartie, un langage compilé se révélera bien plus rapide qu'un langage interprété (la traduction à la volée de votre programme ralentit l'exécution), bien que cette différence tende à se faire de moins en moins sentir au fil des améliorations. De plus, il faudra installer Python sur le système d'exploitation que vous utilisez pour que l'ordinateur puisse comprendre votre code.

Différentes versions de Python

Lors de la création de la Python Software Foundation, en 2001, et durant les années qui ont suivi, le langage Python est passé par une suite de versions que l'on a englobées dans l'appellation Python 2.x (2.3, 2.5, 2.6…). Depuis le 13 février 2009, la version 3.0.1 est disponible. Cette version casse la compatibilité ascendante qui prévalait lors des dernières versions. Compatibilité quoi? Quand un langage de programmation est mis à jour, les développeurs se gardent bien de supprimer ou de trop modifier d'anciennes fonctionnalités. L'intérêt est qu'un programme qui fonctionne sous une certaine version marchera toujours avec la nouvelle version en date. Cependant, la Python Software Foundation, observant un bon nombre de fonctionnalités obsolètes, mises en œuvre plusieurs fois… a décidé de nettoyer tout le projet. Un programme qui tourne à la perfection sous Python 2.x devra donc être mis à jour un minimum pour fonctionner de nouveau sous Python 3. C'est pourquoi je vais vous conseiller ultérieurement de télécharger et d'installer la dernière version en date de Python. Je m'attarderai en effet sur les fonctionnalités de Python 3 et certaines d'entre elles ne seront pas accessibles (ou pas sous le même nom) dans les anciennes versions. Ceci étant posé, tous à l'installation!

Installer Python

L'installation de Python est un jeu d'enfant, aussi bien sous Windows que sous les systèmes Unix. Quel que soit votre système d'exploitation, vous devez vous rendre sur le site officiel de Python.

Sous Windows

  1. Cliquez sur le lien Download dans le menu principal de la page.

Partie 1 : Introduction à Python 11/

Sous Mac OS X

Téléchargez la dernière version de Python. Ouvrez le fichier .dmg et faites un double-clic sur le paquet d'installation Python.mpkg Un assistant d'installation s'ouvre, laissez-vous guider : Python est maintenant installé!

Lancer Python

Ouf! Voilà qui est fait! Bon, en théorie, on commence à utiliser Python dès le prochain chapitre mais, pour que vous soyez un peu récompensés de votre installation exemplaire, voici les différents moyens d'accéder à la ligne de commande Python que nous allons tout particulièrement étudier dans les prochains chapitres.

Sous Windows

Vous avez plusieurs façons d'accéder à la ligne de commande Python, la plus évidente consistant à passer par les menus Démarrer > Tous les programmes > Python 3.2 > Python (Command Line). Si tout se passe bien, vous devriez obtenir une magnifique console (figure suivante). Il se peut que les informations affichées dans la vôtre ne soient pas les mêmes, mais ne vous en inquiétez pas. Qu'est-ce que c'est que cela? On verra plus tard. L'important, c'est que vous ayez réussi à ouvrir la console d'interprétation de Python, le reste attendra le prochain chapitre. Vous pouvez également passer par la ligne de commande Windows ; à cause des raccourcis, je privilégie en général cette méthode, mais c'est une question de goût. Allez dans le menu Démarrer, puis cliquez sur Exécuter. Dans la fenêtre qui s'affiche, tapez simplement « python » et la ligne de commande Python devrait s'afficher à nouveau. Sachez que vous pouvez directement vous rendre dans Exécuter en tapant le raccourci Windows + R. Pour fermer l'interpréteur de commandes Python, vous pouvez tapez « exit() » puis appuyer sur la touche Entrée.

Partie 1 : Introduction à Python 13/

Sous Linux

Lorsque vous l'avez installé sur votre système, Python a créé un lien vers l'interpréteur sous la forme python3.X (le X étant le numéro de la version installée). Si, par exemple, vous avez installé Python 3.2, vous pouvez y accéder grâce à la commande : Code : Console $ python3. Python 3.2 (r32:88445, Mar 4 2011, 22:07:21) [GCC 4.3.3] on linux Type "help", "copyright", "credits" or "license" for more information.

Pour fermer la ligne de commande Python, n'utilisez pas CTRL + C mais CTRL + D (nous verrons plus tard pourquoi).

Sous Mac OS X

Cherchez un dossier Python dans le dossier Applications. Pour lancer Python, ouvrez l'application IDLE de ce dossier. Vous êtes prêts à passer au concret!

En résumé

Python est un langage de programmation interprété, à ne pas confondre avec un langage compilé. Il permet de créer toutes sortes de programmes, comme des jeux, des logiciels, des progiciels, etc. Il est possible d'associer des bibliothèques à Python afin d'étendre ses possibilités. Il est portable, c'est à dire qu'il peut fonctionner sous différents systèmes d'exploitation (Windows, Linux, Mac OS X,…).

Partie 1 : Introduction à Python 14/

Eh oui, l'interpréteur parle en anglais et les instructions que vous saisirez, comme pour l'écrasante majorité des langages de programmation, seront également en anglais. Mais pour l'instant, rien de bien compliqué : l'interpréteur vous indique qu'il a trouvé un problème dans votre ligne d'instruction. Il vous indique le numéro de la ligne (en l'occurence la première), qu'il vous répète obligeamment (ceci est très utile quand on travaille sur un programme de plusieurs centaines de lignes). Puis il vous dit ce qui l'arrête, ici : SyntaxError : invalid syntax. Limpide n'est-ce pas? Ce que vous avez saisi est incompréhensible pour Python. Enfin, la preuve qu'il n'est pas rancunier, c'est qu'il vous affiche à nouveau une série de trois chevrons, montrant bien qu'il est prêt à retenter l'aventure. Bon, c'est bien joli de recevoir un message d'erreur au premier test mais je me doute que vous aimeriez bien voir des trucs qui fonctionnent, maintenant. C'est parti donc.

Vos premières instructions : un peu de calcul mental pour l'ordinateur

C'est assez trivial, quand on y pense, mais je trouve qu'il s'agit d'une excellente manière d'aborder pas à pas la syntaxe de Python. Nous allons donc essayer d'obtenir les résultats de calculs plus ou moins compliqués. Je vous rappelle encore une fois qu'exécuter les tests en même temps que moi sur votre machine est une très bonne façon de vous rendre compte de la syntaxe et surtout, de la retenir.

Saisir un nombre

Vous avez pu voir sur notre premier (et à ce jour notre dernier) test que Python n'aimait pas particulièrement les suites de lettres qu'il ne comprend pas. Par contre, l'interpréteur adore les nombres. D'ailleurs, il les accepte sans sourciller, sans une seule erreur : **Code : Python Console

** 7 7

D'accord, ce n'est pas extraordinaire. On saisit un nombre et l'interpréteur le renvoie. Mais dans bien des cas, ce simple retour indique que l'interpréteur a bien compris et que votre saisie est en accord avec sa syntaxe. De même, vous pouvez saisir des nombres à virgule. **Code : Python Console

** 9.

Attention : on utilise ici la notation anglo-saxonne, c'est-à-dire que le point remplace la virgule. La virgule a un tout autre sens pour Python, prenez donc cette habitude dès maintenant. Il va de soi que l'on peut tout aussi bien saisir des nombres négatifs (vous pouvez d'ailleurs faire l'essai).

Opérations courantes

Bon, il est temps d'apprendre à utiliser les principaux opérateurs de Python, qui vont vous servir pour la grande majorité de vos programmes.

Addition, soustraction, multiplication, division

Pour effectuer ces opérations, on utilise respectivement les symboles +, -, * et /. Code : Python Console

Partie 1 : Introduction à Python 16/

Pourquoi ce dernier résultat approximatif? Python n'y est pas pour grand chose. En fait, le problème vient en grande partie de la façon dont les nombres à virgule sont écrits dans la mémoire de votre ordinateur. C'est pourquoi, en programmation, on préfère travailler autant que possible avec des nombres entiers. Cependant, vous remarquerez que l'erreur est infime et qu'elle n'aura pas de réel impact sur les calculs. Les applications qui ont besoin d'une précision mathématique à toute épreuve essayent de pallier ces défauts par d'autres moyens mais ici, ce ne sera pas nécessaire. Faites également des tests pour la soustraction, la multiplication et la division : il n'y a rien de difficile.

Division entière et modulo

Si vous avez pris le temps de tester la division, vous vous êtes rendu compte que le résultat est donné avec une virgule flottante. **Code : Python Console

** 10 / 5

>>> 10 / 3

Il existe deux autres opérateurs qui permettent de connaître le résultat d'une division entière et le reste de cette division. Le premier opérateur utilise le symbole « // ». Il permet d'obtenir la partie entière d'une division. **Code : Python Console

** 10 // 3 3

L'opérateur « % », que l'on appelle le « modulo », permet de connaître le reste de la division. **Code : Python Console

** 10 % 3 1

Partie 1 : Introduction à Python 17/

Le monde merveilleux des variables Au chapitre précédent, vous avez saisi vos premières instructions en langage Python, bien que vous ne vous en soyez peut-être pas rendu compte. Il est également vrai que les instructions saisies auraient fonctionné dans la plupart des langages. Ici, cependant, nous allons commencer à approfondir un petit peu la syntaxe du langage, tout en découvrant un concept important de la programmation : les variables. Ce concept est essentiel et vous ne pouvez absolument pas faire l'impasse dessus. Mais je vous rassure, il n'y a rien de compliqué, que de l'utile et de l'agréable.

C'est quoi, une variable? Et à quoi cela sert-il?

Les variables sont l'un des concepts qui se retrouvent dans la majorité (et même, en l'occurrence, la totalité) des langages de programmation. Autant dire que sans variable, on ne peut pas programmer, et ce n'est pas une exagération.

C'est quoi, une variable?

Une variable est une donnée de votre programme, stockée dans votre ordinateur. C'est un code alpha-numérique que vous allez lier à une donnée de votre programme, afin de pouvoir l'utiliser à plusieurs reprises et faire des calculs un peu plus intéressants avec. C'est bien joli de savoir faire des opérations mais, si on ne peut pas stocker le résultat quelque part, cela devient très vite ennuyeux. Voyez la mémoire de votre ordinateur comme une grosse armoire avec plein de tiroirs. Chaque tiroir peut contenir une donnée ; certaines de ces données seront des variables de votre programme.

Comment cela fonctionne-t-il?

Le plus simplement du monde. Vous allez dire à Python : « je veux que, dans une variable que je nomme age, tu stockes mon âge, pour que je puisse le retenir (si j'ai la mémoire très courte), l'augmenter (à mon anniversaire) et l'afficher si besoin est ». Comme je vous l'ai dit, on ne peut pas passer à côté des variables. Vous ne voyez peut-être pas encore tout l'intérêt de stocker des informations de votre programme et pourtant, si vous ne stockez rien, vous ne pouvez pratiquement rien faire. En Python, pour donner une valeur à une variable, il suffit d'écrire nom_de_la_variable = valeur. Une variable doit respecter quelques règles de syntaxe incontournables :

  1. Le nom de la variable ne peut être composé que de lettres, majuscules ou minuscules, de chiffres et du symbole souligné « _ » (appelé underscore en anglais).
  2. Le nom de la variable ne peut pas commencer par un chiffre.
  3. Le langage Python est sensible à la casse, ce qui signifie que des lettres majuscules et minuscules ne constituent pas la même variable (la variable AGE est différente de aGe, elle-même différente de age). Au-delà de ces règles de syntaxe incontournables, il existe des conventions définies par les programmeurs eux-mêmes. L'une d'elle, que j'ai tendance à utiliser assez souvent, consiste à écrire la variable en minuscules et à remplacer les espaces éventuels par un espace souligné « _ ». Si je dois créer une variable contenant mon âge, elle se nommera donc mon_age. Une autre convention utilisée consiste à passer en majuscule le premier caractère de chaque mot, à l'exception du premier mot constituant la variable. La variable contenant mon âge se nommerait alors monAge. Vous pouvez utiliser la convention qui vous plaît, ou même en créer une bien à vous, mais essayez de rester cohérent et de n'utiliser qu'une seule convention d'écriture. En effet, il est essentiel de pouvoir vous repérer dans vos variables dès que vous commencez à travailler sur des programmes volumineux. Ainsi, si je veux associer mon âge à une variable, la syntaxe sera : Code : Python mon_age = 21 L'interpréteur vous affiche aussitôt trois chevrons sans aucun message. Cela signifie qu'il a bien compris et qu'il n'y a eu aucune erreur.

Partie 1 : Introduction à Python 19/

Sachez qu'on appelle cette étape l'affectation de valeur à une variable (parfois raccourci en « affectation de variable »). On dit en effet qu'on a affecté la valeur 21 à la variable mon_age. On peut afficher la valeur de cette variable en la saisissant simplement dans l'interpréteur de commandes. **Code : Python Console

** mon_age 21

Les espaces séparant « = » du nom et de la valeur de la variable sont facultatifs. Je les mets pour des raisons de lisibilité. Bon, c'est bien joli tout cela, mais qu'est-ce qu'on fait avec cette variable? Eh bien, tout ce que vous avez déjà fait au chapitre précédent, mais cette fois en utilisant la variable comme un nombre à part entière. Vous pouvez même affecter à d'autres variables des valeurs obtenues en effectuant des calculs sur la première et c'est là toute la puissance de ce mécanisme. Essayons par exemple d'augmenter de 2 la variable mon_age. **Code : Python Console

** mon_age = mon_age + 2 >>> mon_age 23

Encore une fois, lors de l'affectation de la valeur, rien ne s'affiche, ce qui est parfaitement normal. Maintenant, essayons d'affecter une valeur à une autre variable d'après la valeur de mon_age. **Code : Python Console

** mon_age_x2 = mon_age * 2 >>> mon_age_x 46

Encore une fois, je vous invite à tester en long, en large et en travers cette possibilité. Le concept n'est pas compliqué mais extrêmement puissant. De plus, comparé à certains langages, affecter une valeur à une variable est extrêmement simple. Si la variable n'est pas créée, Python s'en charge automatiquement. Si la variable existe déjà, l'ancienne valeur est supprimée et remplacée par la nouvelle. Quoi de plus simple? Certains mots-clés de Python sont réservés , c'est-à-dire que vous ne pouvez pas créer des variables portant ce nom. En voici la liste pour Python 3 : and del from none true

Partie 1 : Introduction à Python 20/