Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| projets:ecole:python:1 [Le 20/10/2007, 09:59] – gloubiboulga | projets:ecole:python:1 [Le 11/09/2022, 13:17] (Version actuelle) – Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) moths-art | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ===== Sessions | + | {{tag> |
| + | |||
| + | ---- | ||
| + | |||
| + | ====== Cours sur Python | ||
| + | |||
| + | |||
| + | ===== Session | ||
| ==== Introduction ==== | ==== Introduction ==== | ||
| - | Python est né au début des années 1980, son père est Guido van Rossum. Sa version actuelle est la 2.5.1. | ||
| - | Python est présent partout, vous l' | + | Python est né au début des années 1990, son père est Guido van Rossum. Les deux versions |
| + | |||
| + | Python est présent partout, vous l' | ||
| + | |||
| + | Ce cours est une introduction au langage, en abordant certaines notions de base de la programmation. Le but est d' | ||
| - | Ce cours est une introduction au langage, en abordant certaines notions de base de la programmation. Le but est d' | ||
| ==== L' | ==== L' | ||
| - | Python est un langage | + | Python est un langage |
| python | python | ||
| - | Commençont | + | Commençons |
| 3*6 | 3*6 | ||
| 4-9 | 4-9 | ||
| === Notion de variable === | === Notion de variable === | ||
| - | Les variables correspondent à des zones de stockage de valeurs. Elles sont désignées par des mots contenant les lettres minuscules, majuscules, chiffres et underscore " | ||
| - | A une variable on assigne une valeur grâce à l' | + | Les variables correspondent à des zones de stockage de valeurs. Elles sont désignées par des mots contenant les lettres minuscules, majuscules, les chiffres et le tiret bas « _ »((En anglais : // |
| + | |||
| + | A une variable on assigne une valeur grâce à l' | ||
| a = 4 | a = 4 | ||
| b = 5 | b = 5 | ||
| Ligne 30: | Ligne 40: | ||
| c | c | ||
| - | La première et la troisème | + | La première et la troisième |
| - | Une variable peut "dépendre" | + | Une variable peut « dépendre |
| a = 4 | a = 4 | ||
| a = a + 1 | a = a + 1 | ||
| a | a | ||
| - | Attention à la casse ! 'A' | + | Attention à la casse ! « A » est différent de « a ». |
| === Notion de type === | === Notion de type === | ||
| - | On n'a utilisé que des entiers pour l' | + | On n'a utilisé que des entiers pour l' |
| a = 5 | a = 5 | ||
| a / 2 | a / 2 | ||
| - | On obtient 2, et pas 2.5. Pourquoi ? python arrondi tout simplement à l' | + | b = -5 |
| + | b / 2 | ||
| + | On obtient 2, et pas 2.5 pour a, et -3 et pas -2.5 pour b. Pourquoi ? python arrondi tout simplement à l' | ||
| + | <note important> | ||
| a = 5.0 | a = 5.0 | ||
| a / 2 | a / 2 | ||
| - | Un autre type très courant est la " | + | Un autre type très courant est la « chaine |
| une_chaine = "Je suis une chaine." | une_chaine = "Je suis une chaine." | ||
| une_chaine | une_chaine | ||
| - | On peut 'ajouter' | + | On peut « ajouter |
| a = " | a = " | ||
| b = "Monde !" | b = "Monde !" | ||
| Ligne 61: | Ligne 74: | ||
| b = " | b = " | ||
| b | b | ||
| - | Notez la différence entre les 2 résultats. La première fois python affiche un entier, la seconde une chaîne | + | Notez la différence entre les 2 résultats. La première fois python affiche un entier, la seconde une chaine |
| a+b | a+b | ||
| - | Une erreur résulte de ce calcul, puisque a et b sont de type différents. | + | |
| + | Une erreur résulte de ce calcul, puisque | ||
| Ligne 70: | Ligne 85: | ||
| Un des intérêts d'un programme est de pouvoir interagir avec l' | Un des intérêts d'un programme est de pouvoir interagir avec l' | ||
| - | * raw_input() permet de demander à l' | + | * '' |
| - | * print permet d' | + | * '' |
| Ce sont deux fonctions, qui utilisent un ou plusieurs arguments (des données qu' | Ce sont deux fonctions, qui utilisent un ou plusieurs arguments (des données qu' | ||
| - | raw_input() s' | + | '' |
| resultat = raw_input(" | resultat = raw_input(" | ||
| - | La chaîne | + | |
| + | La chaine | ||
| Pour ensuite afficher ce texte on peut utiliser : | Pour ensuite afficher ce texte on peut utiliser : | ||
| + | |||
| print "Du texte qui ne change pas et autre chose :", resultat | print "Du texte qui ne change pas et autre chose :", resultat | ||
| + | |||
| Les éléments à afficher sont séparés par une virgule, qui apparaitre comme un simple espace lors de l' | Les éléments à afficher sont séparés par une virgule, qui apparaitre comme un simple espace lors de l' | ||
| - | "Du texte qui ne change pas et autre chose :" et '' | + | '' |
| Regardons maintenant cet exemple : | Regardons maintenant cet exemple : | ||
| - | | + | <code python> |
| - | # -*- coding: UTF8 -*- | + | # |
| - | + | # -*- coding: UTF8 -*- | |
| - | # On demande le nom | + | |
| - | nom = raw_input(" | + | # On demande le nom |
| - | + | nom = raw_input(" | |
| - | # On demande le prénom | + | |
| - | prenom = raw_input(" | + | # On demande le prénom |
| - | + | prenom = raw_input(" | |
| - | # On affiche le tout | + | |
| - | print " | + | # On affiche le tout |
| + | print (" | ||
| + | </ | ||
| Quelques petites remarques : | Quelques petites remarques : | ||
| - | * les lignes qui commencent par '#' | + | * les lignes qui commencent par « # » ne sont pas lues par Python, ce sont des lignes de commentaires. Elle sont utiles pour détailler certains éléments de votre script ; |
| - | * la première ligne est un 'shebang', qui permet à votre shell que savoir avec quel programme lancer votre script lorsqu' | + | * la première ligne est un « shebang |
| - | * la seconde définit l' | + | * la seconde définit l' |
| + | |||
| + | Copiez ce script dans un fichier « exemple.py » et exécutez : | ||
| - | Copiez ce script dans un fichier '' | ||
| python exemple.py | python exemple.py | ||
| - | En guise d' | + | En guise d' |
| === Conditions === | === Conditions === | ||
| Pour que le script réagisse suivant ce que l' | Pour que le script réagisse suivant ce que l' | ||
| + | <code python> | ||
| if (une_condition_est_vraie): | if (une_condition_est_vraie): | ||
| # on execute | # on execute | ||
| # une série | # une série | ||
| # d' | # d' | ||
| - | else | + | else: |
| # sinon | # sinon | ||
| # on fait autre chose | # on fait autre chose | ||
| + | </ | ||
| La syntaxe est (je pense) assez claire, mais elle amène quelques nouvelles notions. | La syntaxe est (je pense) assez claire, mais elle amène quelques nouvelles notions. | ||
| == Les booléens == | == Les booléens == | ||
| - | Une variable booléennes est une variable qui n' | + | |
| + | Une variable booléennes est une variable qui n' | ||
| " | " | ||
| == L' | == L' | ||
| - | Pour connaître toutes les instructions à exécuter si la condition est vraie, on définit un " | + | Pour connaître toutes les instructions à exécuter si la condition est vraie, on définit un " |
| # on execute | # on execute | ||
| # une série | # une série | ||
| Ligne 135: | Ligne 160: | ||
| b = 2 | b = 2 | ||
| if (a > b): | if (a > b): | ||
| - | print "a>b" | + | print (" |
| else: | else: | ||
| - | print "b>a" | + | print (" |
| Quel sera le résultat du script ? | Quel sera le résultat du script ? | ||
| Ligne 151: | Ligne 176: | ||
| Vous pouvez maintenant reprendre l' | Vous pouvez maintenant reprendre l' | ||
| + | |||
| + | |||
| + | ==== Listes ==== | ||
| + | |||
| + | === Définir une liste === | ||
| + | Utiliser une variable par élément à saisir, ça devient très vite ingérable (imaginez ce que ça donnerait pour gérer une liste de 10000 clients). Python possède un autre type de données, les listes. | ||
| + | Il s'agit en fait d'un " | ||
| + | a = "coup de fil à maman" | ||
| + | b = " | ||
| + | c = " | ||
| + | A chaque nouvel élément il faudrait ajouter une variable, c'est ingérable. On peut alors utiliser : | ||
| + | todo = ["coup de fil à maman", | ||
| + | Notez que si l'on a déjà initialisé a, b et c on peut aussi utiliser : | ||
| + | todo = [a, b, c] | ||
| + | |||
| + | On n'a plus qu'une seule variable, qui contient un ensemble cohérent d' | ||
| + | |||
| + | Une liste est ce qu'on appelle un ' | ||
| + | todo.append(" | ||
| + | Dans l' | ||
| + | todo | ||
| + | Le nouvel élément a bien été ajouté à notre liste. | ||
| + | |||
| + | '' | ||
| + | Vous noterez que ' | ||
| + | todo = todo.methode() | ||
| + | |||
| + | === Accéder aux éléments === | ||
| + | On accède aux éléments d'une liste par leur indice (de 0 à (nombre_d_elements - 1)). Le premier élément est donc accessible par : | ||
| + | todo[0] | ||
| + | Le nombre d' | ||
| + | nb = len(todo) | ||
| + | Donc le dernier élément de la liste est : | ||
| + | todo[nb - 1] | ||
| + | |||
| + | Si l'on veut agir sur tous les éléments d'une liste, on utilise l' | ||
| + | for item in todo: | ||
| + | # on commence un bloc d' | ||
| + | # avec une nouvelle indentation | ||
| + | # ' | ||
| + | # la valeur de l' | ||
| + | |||
| + | Pour afficher un élément du tableau par ligne on peut donc utiliser : | ||
| + | for untodo in todo: | ||
| + | print " - %s" % untodo | ||
| + | |||
| + | Notez au passage l' | ||
| + | |||
| + | |||
| + | ==== Fonctions - introduction ==== | ||
| + | On a parlé tout à l' | ||
| + | |||
| + | L' | ||
| + | Cette fonction pourrait être définie comme suit : | ||
| + | <code python> | ||
| + | def list_print(texte): | ||
| + | n_texte = " - %s - " % texte | ||
| + | return n_texte | ||
| + | </ | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | Notez l' | ||
| + | |||
| + | Une fonction ne doit pas forcément retourner quelque chose, elle peut par exemple juste ecrire du texte. | ||
| + | |||
| + | Dans un script, cette fonction pourra être appelée comme ceci : | ||
| + | txt1 = " | ||
| + | txt2 = " | ||
| + | ntxt = (list_print(txt1), | ||
| + | print """ | ||
| + | %s | ||
| + | """ | ||
| + | |||
| + | A noter : | ||
| + | * l' | ||
| + | * l' | ||
