Ceci est une ancienne révision du document !
Table des matières
Quelques notes sur le langage PYTHON
Rédigé à partir de différentes sources :
- Recherches en ligne,
- Livres..
Travaillé sous environnement Linux.
ECRIRE UN PROGRAMME
Avec le Shell (ou interpréteur) PYTHON
Pour entrer dans le “Shell Python”, saisissez python ou bien python3 dans le terminal (ou 3 est le numéro de version).
Pour sortir du “Shell Python”, saisissez Quit() ou bien exit() dans le terminal.
- Utile pour tester directement des lignes de codes.
A SAVOIR : si plusieurs version de Python sont installés, on peut choisir d'en utiliser une à l'aide de la commande :
py -lenumérodeversion
Avec un éditeur de texte
..choisir son éditeur de texte préféré..
NOTE : UTF8 permet de s'assurer de pouvoir utiliser les caractères spéciaux (accents, cedille..).
Mon premier programme PYTHON
Créer un nouveau fichier dans son éditeur de texte préféré..
#!/usr/bin/env python
print("Bonjour, je suis un programme ecrit en Python.")
ChampNom = input("Quel est votre prénom ? ")
print("Salut, " + ChampNom + "!")
Ici, s'affiche“Salut prénom !”
La dernière ligne de code précédente peut aussi s'écrire ;
print("Salut, ", ChampNom, " !")
A SAVOIR : une autre manière d'afficher le contenu d'une variable ;
print(f"Bien le bonjour {ChampNom} :) prêt à étudier le langage Python ??")
A SAVOIR : Entre les accolades peut figurer une variable ou une expression
Enregistrer le fichier sous.. “MonProgramme.py”
Exécution du programme depuis la ligne de commande
- à l’emplacement du fichier..
- ou avec le chemin complet..
Pour exécuter le programme sous environnement Linux.
Il faut d’abord rendre le fichier exécutable en saisissant la ligne ci-dessous, dans le répertoire ou est stocké le fichier :
chmod +x MonProgramme.py
REMARQUE :
- Pour exécuter le programme, si l’on n’est pas positionné dans le répertoire, il faut saisir intégralement le chemin..
- On peut aussi exécuter le programme avec la syntaxe :
python3 MonProgramme.py
LA CASSE
Dans Python, la casse est importante.
Ainsi :
print(2+2)
affiche bien le résultat, soit 4,
Print(2+2)
“print” avec “P” majuscule, génère une erreur.
NOTION D'OBJET
..compréhension à revoir..
Un objet est une information à traiter..
Un objet, est tout autre qui n'est pas un “mot clé”, “une fonction”, “une variable”.
Pour manipuler un objet avec Python, on peut le stocker/mémoriser dans une variable.
LES VARIABLES
SYNTAXES - Affectation d'une variable
NomDeLaVariable = Valeur
- Comparaison ou contrôle de contenu
NomDeLaVariable == 'contenu'
Type de données
Il n'est pas nécessaire de définir le type d'une variable. Elle prend le type du contenu qu'on lui donne.
Assigner une valeur s'écrit :
mois = 'Janvier’
Connaître le type d'une variable s'écrit :
print(type(NomDeLaVariable))
Modifier le type d'une variable s'écrit :
print LibelléDuType(NomDeLaVariable)
Exemple :
print int(s)
- dans l'Exemple “s” étant une variable de type caractère,
- avec “int” elle devient une variable de type numérique (integer).
Déclaration d'une liste (ou tableau)
SYNTAXES d'une liste
NomListe = ['Valeur 1', 'Valeur 2', 'Valeur x', ...]
Exemple :
- La liste des mois peut s'écrire :
mois = [ 'Jan', 'Fev', 'Mars', 'Avril', 'Mai', 'Juin', 'Juil', 'Aout', 'Sep', 'Oct', 'Nov', 'Dec' ]
- Pour afficher “Mars”, cela peut s'écrire :
print mois[2]
Exemple :
- Créé une liste à partir d'une chaine, peut s'écrire :
list("Que donne cette ensemble de caractères dans une liste")
- A pour effet de mettre chaque caractère et espace dans une “case”..
On peut remplacer l'élément d'une liste.
Exemple :
mois[3] = "En avril fait ce qu'il te plaît"
- Pour le vérifier, on peut afficher la liste, cela s'écrit :
print(mois)
On peut afficher un ensemble d'éléments, en exprimant une plage (de x à y-1).
Exemple :
print(mois[2:8])
- A pour effet d'afficher les éléments 2, 3, 4, 5, 6 et 7.
On peut afficher un ensemble d'éléments, tout ou partie d'une plage, dit le slicing.
Exemple 01 :
print(mois[:2])
- A pour effet d'afficher les valeurs dans les index inférieur à 2.
Exemple 02 :
print(mois[2:])
- A pour effet d'afficher les valeurs dans les index supérieur à 2.
On peut imbriquer plusieurs listes dans une variable liste.
Exemple 01 :
MesListes = [Liste1, Liste2]
- Les listes sont ici distinctes, il y a bien 2 listes.
Exemple 02 :
MesListes = Liste1 + Liste2
- A pour effet de concaténer les listes, il n'y a plus qu'une seule liste.
On peut ajouter des éléments à une liste.
Exemple :
mois.append("Bonne année !!!")
On peut supprimer un éléments d'une liste.
Exemple :
del mois[6]
On peut supprimer le dernier élément ajouté.
Exemple :
mois.pop()
CURIOSITE
Inverser les informations/les caractères.
Exemple :
- Inverser les lettres d'une phrase, peut s'écrire :
"Bonjour tout le monde"[::-1]
Déclaration d'un tuple
SYNTAXES d'un tuple
NomTuple = ('Valeur 1', 'Valeur 2', 'Valeur x', ...)
Un tuple ou n-uplet est une liste non modifiable.
Exemple :
- La liste des jours, peut s'écrire :
ListeJours = (Lun, Ma, Me, Je, Ve, Sam, Dim)
Déclaration d'un dictionnaire
SYNTAXES d'un dictionnaire
NomDictionnaire = {'Clé 1' : ('Valeur 1', 'Valeur 2', 'Valeur x'), 'Clé 2' : 'Valeur 1', 'Clé 3' : 'Valeur 1', ...}
Un “dictionnaire” est :
- Une “liste particulière”, il est constitué d'ensemble de “clés” et “valeurs”, il peut y avoir plusieurs valeurs elles sont alors mises entre parenthèses et séparées par des virgules,
- Une collection non ordonnées.
Exemples :
- Pour créer une liste des sports préférés de personnes/personnages :
sports_favoris = { 'Frédéric Chopin' : ('Football', 'Ping-Pong'), 'Ludwig van Beethoven' : 'Basket-ball', 'Wolfgang Amadeus Mozart' : 'Base-ball', 'Antonio Vivaldi' : 'Volley ball', 'Jean-Sébastien Bach' : 'Badminton', 'Hector Berlioz' : 'Rugby' }
- Pour afficher le sport favoris de Hector Berlioz :
print(sports_favoris['Hector Berlioz'])
- Pour supprimer une clé et sa/ses valeur(s) :
del sports_favoris['Ludwig van Beethoven']
- Pour remplacer la ou les valeur(s) :
sports_favoris['Frédéric Chopin'] = 'Hockey sur glace'
- Pour ajouter “Footsal” à l'existant :
sports_favoris['Frédéric Chopin'] = 'Hockey sur glace', 'Footsal'
VOIR FICHIER : 20231218_page46pkids-dict.py
- Pour savoir si une clé existe, on peut écrire :
"terme-recherché" in sports_favoris
Il est alors retourné la valeur TRUE ou FALSE.
A SAVOIR : Il ne doit pas y avoir de doublons de clé, soit de libellé identique.
- Pour lister toutes les clés et les valeurs. On utilise la méthode “items”.
Exemple :
sports_favoris.items()
A pour effet d'afficher en une ligne (soit l'équivalent d'une “liste” de “tuples”), l'ensemble de clés/valeurs du dictionnaire.
- Pour parcourir toutes les clés et valeurs, on peut l'écrire :
for elements in sports_favoris.items(): print(elements)
Le résultat de l'affichage permet de voir que chaque ligne est un tuple, cela peut donc s'écrire aussi :
for elements in sports_favoris.items(): print(type(elements))
Aussi, on peut énumérer les clés ou les valeurs à l'aide de l'indexation :
- Soit pour les clés ;
for elements in sports_favoris.items(): print(elements[0])
- Soit pour les valeurs ;
for elements in sports_favoris.items(): print(elements[1])
Ou bien l'on peut, énumérer les clés et les valeurs à l'aide de variables, respectivement ici “personnage” et “sport”, ce qui peut s'écrire ;
for personnage, sport in sports_favoris.items(): print(personnage)
for personnage, sport in sports_favoris.items(): print(sport)
A SAVOIR : Les éléments d'un dictionnaire ne sont pas ordonnés (classés par ordre alphabétique ou alphanumérique par Exemple) ainsi ils ne peuvent être lu/parcouru dans l'ordre alphabétique ou alphanumérique.
Imbriquer les listes, les tuples et les dictionnaires
SYNTAXES
UNE LISTE
NomListe = ['Valeur 1', 'Valeur 2', 'Valeur x', ...]
UN TUPLE
NomTuple = ('Valeur 1', 'Valeur 2', 'Valeur x', ...)
UN DICTIONNAIRE
NomDictionnaire = {'Clé 1' : ('Valeur 1', 'Valeur 2', 'Valeur x'), 'Clé 2' : 'Valeur 1', 'Clé 3' : 'Valeur 1', ...}
Un tuple dans une liste.
Exemple ;
L = ['a', 'b', ('2', '4', '6')]
Les listes et les tuples étant indexés, on peut interroger chaque éléments. Cela peut s'écrire :
L[0] affiche 'a',
L[1] affiche 'b',
L[2][0] affiche '2',
L[2][1] affiche '4',
L[2][2] affiche '6',
Exemple, pour illustrer :
VOIR FICHIER : < 20240225_elephorm_test-liste.py >
Substitution
%s : pour substituer une variable de type caractère, soit “string”,
%d : pour substituer une variable de type numérique, soit “integer”.
Exemple :
Mois = ['Jan','Fév','Mars','Avr','Mai','Juin','Juil','Août','Sept','Oct','Nov','Déc']
JoursDansMois = [31,28,31,30,31,30,31,31,30,31,30,31]
for cmptr in range(0,12):
print('%s a %d jours.' % (Mois[cmptr],JoursDansMois[cmptr]))
Le résultat de ce code est :
Jan a 31 jours.
Fév a 28 jours.
Mars a 31 jours.
Avr a 30 jours.
Mai a 31 jours.
Juin a 30 jours.
Juil a 31 jours.
Août a 31 jours.
Sept a 30 jours.
Oct a 31 jours.
Nov a 30 jours.
Déc a 31 jours.
LES BOUCLES
..en construction..
LES CARACTÈRES D’ÉCHAPPEMENTS
Exemple :
chaine = ’La syntaxe est importante en Python’
chaine = ”La syntaxe est importante en Python”
Produit le même résultat à l’affichage.
Au sein d’une chaîne si l’on veut intégrer le guillemet simple ou le guillemet double, il faut entourer la chaîne du guillemet qui n’a pas besoin d’être affiché.
Exemple :
- Pour afficher le guillemet simple, on l'entoure du guillemet double.
chaîne = ”Dis s’il te plaît”
Mais pour afficher : Elle a dit ”Ne t’inquiète pas”
- Il faudra utiliser le caractère dit d’échappement, soit l’anti-slash ”\”
chaîne = ’Elle a dit ”Ne t\'inquiète pas”’
A SAVOIR : il existe d’autres caractères d’échappements utiles, par Exemple le retour à la ligne et aussi la tabulation. On peut aussi encadrer une chaîne de caractère avec trois guillemets simple, ce qui a pour effet de traiter tous ce qui est encadrés comme du “texte brut”.
LES OPÉRATEURS
Égalité : ==
Supérieur à : >
Supérieur ou égal à : >=
Inférieur à : <
Inférieur ou égal à : ⇐
Différent de : !=
LES MODULES
Créer un module
Déclarer un module
