Python 2 : Différence entre versions
m (A protégé « Python 2 » ([Modifier=Autoriser uniquement les administrateurs] (infini) [Renommer=Autoriser uniquement les administrateurs] (infini))) |
|||
| (49 révisions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
| − | {{ | + | {{Menu_Python}}{{En_resume}}{{Coulpython}}{{Pythonline3}}{{Sideprogobjet}}{{Sidebaradm}}{{Navigationp}} |
| − | {{ | + | <p align="right" style="color: blue">'''{{CURRENTDAY}}/{{CURRENTMONTH}}/{{CURRENTYEAR}}'''</p> |
| − | {{ | + | <font color=black> |
| − | < | + | <br> |
| − | {{ | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | < | ||
__NOTOC__ | __NOTOC__ | ||
| − | <font size=6 color=red | + | = <font size=6 color=red>'''PYTHON programmation objet'''</font> = |
| − | = | + | == <font color=green>'''Les bases'''</font> == |
| − | == Les bases == | + | <div style="width:52%; height:600px; overflow:auto; border:solid 1px black;"> |
| − | <div style="width: | ||
<center> | <center> | ||
<table> | <table> | ||
<tr> | <tr> | ||
<td >{{Video_3}}</td> | <td >{{Video_3}}</td> | ||
| − | <td > | + | <td >{{#widget:YouTube|id=HPM2ZAxKVlU}}</td> |
</tr> | </tr> | ||
</table> | </table> | ||
</center> | </center> | ||
| − | === Les variables par l'exemple === | + | === <font color=Magenta>'''Les variables par l'exemple'''</font> === |
* Affectons une valeur à la variable age | * Affectons une valeur à la variable age | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 75 : | Ligne 67 : | ||
</div> | </div> | ||
| − | == Les listes == | + | == <font color=green>'''Les listes'''</font> == |
| − | <div style="width: | + | <div style="width:52%; height:600px; overflow:auto; border:solid 1px black;"> |
<center> | <center> | ||
<table> | <table> | ||
<tr> | <tr> | ||
<td >{{Video_4}}</td> | <td >{{Video_4}}</td> | ||
| − | <td > | + | <td >{{#widget:YouTube|id=J3RJE8516MU}}</td> |
</tr> | </tr> | ||
</table> | </table> | ||
</center> | </center> | ||
* Les listes (ou list / array ) en python sont une variable dans laquelle on peut mettre plusieurs variables. | * Les listes (ou list / array ) en python sont une variable dans laquelle on peut mettre plusieurs variables. | ||
| − | === Créer une liste en python === | + | === <font color=Magenta>'''Créer une liste en python'''</font> === |
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
>>> liste = [] | >>> liste = [] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Voir le contenu de la liste en l'appelant === | + | === <font color=Magenta>'''Voir le contenu de la liste en l'appelant'''</font> === |
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
>>> liste | >>> liste | ||
<type 'list'> | <type 'list'> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === | + | === <font color=Magenta>'''Ajouter une valeur à une liste python'''</font> === |
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
>>> liste = [1,2,3] | >>> liste = [1,2,3] | ||
| Ligne 101 : | Ligne 93 : | ||
[1, 2, 3] | [1, 2, 3] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Ajouter après la création de la liste === | + | === <font color=Magenta>'''Ajouter après la création de la liste'''</font> === |
<font color=green size=4>méthode append</font> | <font color=green size=4>méthode append</font> | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 115 : | Ligne 107 : | ||
</syntaxhighlight> | </syntaxhighlight> | ||
* Il est possible de mélanger dans une même liste des variables de type différent. On peut d'ailleurs mettre une liste dans une liste. | * Il est possible de mélanger dans une même liste des variables de type différent. On peut d'ailleurs mettre une liste dans une liste. | ||
| − | === Afficher un item d'une liste === | + | === <font color=Magenta>'''Afficher un item d'une liste'''</font> === |
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
>>> liste = ["a","d","m"] | >>> liste = ["a","d","m"] | ||
| Ligne 123 : | Ligne 115 : | ||
'm' | 'm' | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Modifier une valeur avec son index === | + | === <font color=Magenta>'''Modifier une valeur avec son index'''</font> === |
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
>>> liste = ["a","d","m"] | >>> liste = ["a","d","m"] | ||
| Ligne 134 : | Ligne 126 : | ||
['a', 'd', 'z'] | ['a', 'd', 'z'] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === | + | === <font color=Magenta>'''Supprimer une entrée avec un index'''</font> === |
<font color=red size=4>Fonction del</font> | <font color=red size=4>Fonction del</font> | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 142 : | Ligne 134 : | ||
['a', 'c'] | ['a', 'c'] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === | + | === <font color=Magenta>'''Supprimer une entrée avec sa valeur'''</font> === |
<font color=green size=4>Méthode remove</font> | <font color=green size=4>Méthode remove</font> | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 150 : | Ligne 142 : | ||
['b', 'c'] | ['b', 'c'] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === | + | === <font color=Magenta>'''Inverser les valeurs d'une liste'''</font> === |
* Inverser les items d'une liste | * Inverser les items d'une liste | ||
<font color=green size=4>méthode reverse</font> | <font color=green size=4>méthode reverse</font> | ||
| Ligne 159 : | Ligne 151 : | ||
['c', 'b', 'a'] | ['c', 'b', 'a'] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === | + | === <font color=Magenta>'''Compter le nombre d'items d'une liste'''</font> === |
* Il est possible de compter le nombre d'items d'une liste avec la fonction len . | * Il est possible de compter le nombre d'items d'une liste avec la fonction len . | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 166 : | Ligne 158 : | ||
5 | 5 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Compter le nombre d'occurences d'une valeur === | + | === <font color=Magenta>'''Compter le nombre d'occurences d'une valeur'''</font> === |
<font color=green size=4>Méthode count</font> | <font color=green size=4>Méthode count</font> | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 175 : | Ligne 167 : | ||
2 | 2 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Trouver l'index d'une valeur === | + | === <font color=Magenta>'''Trouver l'index d'une valeur'''</font> === |
<font color=green size=4>méthode index</font> | <font color=green size=4>méthode index</font> | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 182 : | Ligne 174 : | ||
3 | 3 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Manipuler une liste === | + | === <font color=Magenta>'''Manipuler une liste'''</font> === |
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
>>> liste = [1, 10, 100, 250, 500] | >>> liste = [1, 10, 100, 250, 500] | ||
| Ligne 198 : | Ligne 190 : | ||
[] | [] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Boucler sur une liste === | + | === <font color=Magenta>'''Boucler sur une liste'''</font> === |
* Pour afficher les valeurs d'une liste, on peut utiliser une boucle: | * Pour afficher les valeurs d'une liste, on peut utiliser une boucle: | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 219 : | Ligne 211 : | ||
</syntaxhighlight> | </syntaxhighlight> | ||
'''Les valeurs retournées par la boucle sont des tuples.''' | '''Les valeurs retournées par la boucle sont des tuples.''' | ||
| − | === Copier une liste === | + | === <font color=Magenta>'''Copier une liste'''</font> === |
* Beaucoup de débutants font l'erreur de copier une liste de cette manière: | * Beaucoup de débutants font l'erreur de copier une liste de cette manière: | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 255 : | Ligne 247 : | ||
[[1, 2], [1, 2, 3]] | [[1, 2], [1, 2, 3]] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Transformer une string en liste === | + | === <font color=Magenta>'''Transformer une string en liste'''</font> === |
* Transformer une chaine de caractère en liste. | * Transformer une chaine de caractère en liste. | ||
<font color=green size=4>Méthode split</font> | <font color=green size=4>Méthode split</font> | ||
| Ligne 263 : | Ligne 255 : | ||
['Olivier', 'ENGEL', 'Strasbourg'] | ['Olivier', 'ENGEL', 'Strasbourg'] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Transformer une liste en string === | + | === <font color=Magenta>'''Transformer une liste en string'''</font> === |
<font color=green size=4>Méthode " join "</font> | <font color=green size=4>Méthode " join "</font> | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 270 : | Ligne 262 : | ||
'Olivier:ENGEL:Strasbourg' | 'Olivier:ENGEL:Strasbourg' | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Trouver un item dans une liste === | + | === <font color=Magenta>'''Trouver un item dans une liste'''</font> === |
* Pour savoir si un élément est dans une liste, utiliser le mot clé in de cette manière: | * Pour savoir si un élément est dans une liste, utiliser le mot clé in de cette manière: | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 279 : | Ligne 271 : | ||
False | False | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === La fonction range === | + | === <font color=Magenta>'''La fonction range'''</font> === |
* La <font color=red size=4>fonction range</font> génère une liste composée d'une simple suite arithmétique. | * La <font color=red size=4>fonction range</font> génère une liste composée d'une simple suite arithmétique. | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 285 : | Ligne 277 : | ||
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] | [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Agrandir une liste par une liste === | + | === <font color=Magenta>'''Agrandir une liste par une liste'''</font> === |
* Pour mettre bout à bout deux listes, utiliser la <font color=green size=4>méthode extend</font> | * Pour mettre bout à bout deux listes, utiliser la <font color=green size=4>méthode extend</font> | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 294 : | Ligne 286 : | ||
[1, 2, 3, 4, 4, 5, 1, 0] | [1, 2, 3, 4, 4, 5, 1, 0] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Permutations === | + | === <font color=Magenta>'''Permutations'''</font> === |
* La permutation d'un ensemble d'éléments est une liste de tous les cas possibles. | * La permutation d'un ensemble d'éléments est une liste de tous les cas possibles. | ||
* Si on besoin de cette fonctionnalité, inutile de réinventer la roue, itertools | * Si on besoin de cette fonctionnalité, inutile de réinventer la roue, itertools | ||
| Ligne 302 : | Ligne 294 : | ||
[('a', 'b', 'c'), ('a', 'c', 'b'), ('b', 'a', 'c'), ('b', 'c', 'a'), ('c', 'a', 'b'), ('c', 'b', 'a')] | [('a', 'b', 'c'), ('a', 'c', 'b'), ('b', 'a', 'c'), ('b', 'c', 'a'), ('c', 'a', 'b'), ('c', 'b', 'a')] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Permutation d'une liste de liste === | + | === <font color=Magenta>'''Permutation d'une liste de liste'''</font> === |
* Afficher tous les cas possibles d'une liste elle-même composée de liste? | * Afficher tous les cas possibles d'une liste elle-même composée de liste? | ||
* Outil product de itertools : | * Outil product de itertools : | ||
| Ligne 310 : | Ligne 302 : | ||
[('a', 'c'), ('a', 'd'), ('b', 'c'), ('b', 'd')] | [('a', 'c'), ('a', 'd'), ('b', 'c'), ('b', 'd')] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Astuces === | + | === <font color=Magenta>'''Astuces'''</font> === |
* Afficher les 2 premiers éléments d'une liste | * Afficher les 2 premiers éléments d'une liste | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 354 : | Ligne 346 : | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | == Méthodes de manipulation de listes == | + | === <font color=Magenta>'''Méthodes de manipulation de listes'''</font> === |
<div style="width:80%; height:600px; overflow:auto; border:solid 1px black;"> | <div style="width:80%; height:600px; overflow:auto; border:solid 1px black;"> | ||
| − | === Ajouter, Supprimer, trier === | + | ==== Ajouter, Supprimer, trier ==== |
<center> | <center> | ||
<table> | <table> | ||
<tr> | <tr> | ||
<td >{{Video_6}}</td> | <td >{{Video_6}}</td> | ||
| − | <td > | + | <td >{{#widget:YouTube|id=h_s6ctXNPJ0}}</td> |
</tr> | </tr> | ||
</table> | </table> | ||
</center> | </center> | ||
</div> | </div> | ||
| − | |||
</div> | </div> | ||
| − | == Les Tuples == | + | == <font color=green>'''Les Tuples'''</font> == |
| − | <div style="width: | + | <div style="width:52%; height:600px; overflow:auto; border:solid 1px black;"> |
* Un tuple est une liste qui ne peut plus être modifiée. | * Un tuple est une liste qui ne peut plus être modifiée. | ||
| − | === Créer un tuple === | + | === <font color=Magenta>'''Créer un tuple'''</font> === |
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
>>> mon_tuple = () | >>> mon_tuple = () | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Ajouter une valeur à un tuple === | + | === <font color=Magenta>'''Ajouter une valeur à un tuple'''</font> === |
* Créer un tuple avec des valeurs | * Créer un tuple avec des valeurs | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 396 : | Ligne 387 : | ||
<type 'tuple'> | <type 'tuple'> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Afficher une valeur d'un tuple === | + | === <font color=Magenta>'''Afficher une valeur d'un tuple'''</font> === |
* Le tuple est une sorte de liste, on peut donc utiliser la même syntaxe pour lire les données du tuple. | * Le tuple est une sorte de liste, on peut donc utiliser la même syntaxe pour lire les données du tuple. | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 409 : | Ligne 400 : | ||
TypeError: 'tuple' object does not support item assignment | TypeError: 'tuple' object does not support item assignment | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === A quoi sert un tuple alors? === | + | === <font color=Magenta>'''A quoi sert un tuple alors?'''</font> === |
* Le tuple permet une affectation multiple: | * Le tuple permet une affectation multiple: | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 428 : | Ligne 419 : | ||
* On utilisera un tuple pour définir des sortes de constantes qui n'ont donc pas vocation à changer. | * On utilisera un tuple pour définir des sortes de constantes qui n'ont donc pas vocation à changer. | ||
</div> | </div> | ||
| − | == Les Dictionnaires == | + | |
| − | <div style="width: | + | == <font color=green>'''Les Dictionnaires'''</font> == |
| + | <div style="width:52%; height:600px; overflow:auto; border:solid 1px black;"> | ||
* Un dictionnaire en python est une sorte de liste mais au lieu d'utiliser des index , on utilise des clés alphanumériques. | * Un dictionnaire en python est une sorte de liste mais au lieu d'utiliser des index , on utilise des clés alphanumériques. | ||
| − | === Créer un dictionnaire python === | + | === <font color=Magenta>'''Créer un dictionnaire python'''</font> === |
* Initialiser un dictionnaire: | * Initialiser un dictionnaire: | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 440 : | Ligne 432 : | ||
>>> a = dict() | >>> a = dict() | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Ajouter des valeurs dans un dictionnaire python === | + | === <font color=Magenta>'''Ajouter des valeurs dans un dictionnaire python'''</font> === |
* Il faut indiquer une clé ainsi qu'une valeur: | * Il faut indiquer une clé ainsi qu'une valeur: | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 460 : | Ligne 452 : | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Vérifier la présence d'une clé dans un dictionnaire python === | + | === <font color=Magenta>'''Vérifier la présence d'une clé dans un dictionnaire python'''</font> === |
* Utiliser la <font color=green size=4>méthode haskey</font> pour vérifier la présence d'une clé | * Utiliser la <font color=green size=4>méthode haskey</font> pour vérifier la présence d'une clé | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 466 : | Ligne 458 : | ||
True | True | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Supprimer une entrée dans un dictionnaire python === | + | === <font color=Magenta>'''Supprimer une entrée dans un dictionnaire python'''</font> === |
* Il est possible de supprimer une entrée en indiquant sa clé, comme pour les listes: | * Il est possible de supprimer une entrée en indiquant sa clé, comme pour les listes: | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 473 : | Ligne 465 : | ||
{'prenom': 'Bruce'} | {'prenom': 'Bruce'} | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Récupérer les clés d'un dictionnaire python par une boucle === | + | === <font color=Magenta>'''Récupérer les clés d'un dictionnaire python par une boucle'''</font> === |
* Pour récupérer les clés on utilise la <font color=green size=4>méthode keys</font> . | * Pour récupérer les clés on utilise la <font color=green size=4>méthode keys</font> . | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 483 : | Ligne 475 : | ||
prenom | prenom | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Récupérer les valeurs d'un dictionnaire python par une boucle === | + | === <font color=Magenta>'''Récupérer les valeurs d'un dictionnaire python par une boucle'''</font> === |
* <font color=green size=4>Méthode values</font> | * <font color=green size=4>Méthode values</font> | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 493 : | Ligne 485 : | ||
Bruce | Bruce | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Récupérer les clés et les valeurs d'un dictionnaire python par une boucle === | + | === <font color=Magenta>'''Récupérer les clés et les valeurs d'un dictionnaire python par une boucle'''</font> === |
* Pour récupérer les clés et les valeurs en même temps, on utilise la <font color=green size=4>méthode items</font> qui retourne un tuple . | * Pour récupérer les clés et les valeurs en même temps, on utilise la <font color=green size=4>méthode items</font> qui retourne un tuple . | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 503 : | Ligne 495 : | ||
prenom Bruce | prenom Bruce | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Utiliser des tuples comme clé dans un dictionnaire python === | + | === <font color=Magenta>'''Utiliser des tuples comme clé dans un dictionnaire python'''</font> === |
* Une des forces de python est la combinaison tuple/dictionnaire qui fait des merveilles dans certains cas comme lors de l'utilisation de coordonnées. | * Une des forces de python est la combinaison tuple/dictionnaire qui fait des merveilles dans certains cas comme lors de l'utilisation de coordonnées. | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 512 : | Ligne 504 : | ||
{(4, 5): 13, (3, 2): 12} | {(4, 5): 13, (3, 2): 12} | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Créer une copie indépendante d'un dictionnaire python === | + | === <font color=Magenta>'''Créer une copie indépendante d'un dictionnaire python'''</font> === |
* Comme pour toute variable, on ne peut pas copier un dictionnaire en faisant dic1 = dic2 | * Comme pour toute variable, on ne peut pas copier un dictionnaire en faisant dic1 = dic2 | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 529 : | Ligne 521 : | ||
{'k2': 'Wayne', 'k1': 'Bruce'} | {'k2': 'Wayne', 'k1': 'Bruce'} | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Fusionner des dictionnaires python === | + | === <font color=Magenta>'''Fusionner des dictionnaires python'''</font> === |
* La <font color=green size=4>méthode update</font> permet de fusionner deux dictionaires . | * La <font color=green size=4>méthode update</font> permet de fusionner deux dictionaires . | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 540 : | Ligne 532 : | ||
</div> | </div> | ||
| − | == Fonctions et Méthodes == | + | == <font color=green>'''Fonctions et Méthodes'''</font> == |
| − | <div style="width: | + | <div style="width:50%; height:600px; overflow:auto; border:solid 1px black;"> |
<center> | <center> | ||
<table> | <table> | ||
<tr> | <tr> | ||
<td >{{Video_5}}</td> | <td >{{Video_5}}</td> | ||
| − | <td > | + | <td >{{#widget:YouTube|id=u3u0BxbzLFw}}</td> |
</tr> | </tr> | ||
</table> | </table> | ||
</center> | </center> | ||
| − | === Les fonctions === | + | === <font color=Magenta>'''Les fonctions'''</font> === |
* Une fonction (ou function ) est une suite d'instructions que l'on peut appeler avec un nom. | * Une fonction (ou function ) est une suite d'instructions que l'on peut appeler avec un nom. | ||
==== Première fonction ==== | ==== Première fonction ==== | ||
| Ligne 668 : | Ligne 660 : | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Portée des variables (variable globale et variable locale) === | + | === <font color=Magenta>'''Portée des variables (variable globale et variable locale)'''</font> === |
Une variable déclarée à la racine d'un module est visible dans tout ce module. On parle alors de variable globale . | Une variable déclarée à la racine d'un module est visible dans tout ce module. On parle alors de variable globale . | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> | ||
| Ligne 689 : | Ligne 681 : | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | == Les fonctions natives == | + | == <font color=green>'''Les fonctions natives'''</font> == |
<center> | <center> | ||
{{Python_natif}} | {{Python_natif}} | ||
</center> | </center> | ||
| − | == Procédure et fonctions == | + | == <font color=green>'''Procédure et fonctions'''</font> == |
* Une fonction n'est pas obligée de renvoyer une valeur, on parlera alors dans ce cas plutôt de procédure . | * Une fonction n'est pas obligée de renvoyer une valeur, on parlera alors dans ce cas plutôt de procédure . | ||
</div> | </div> | ||
Version actuelle datée du 12 novembre 2020 à 16:01
Array
(Opérateurs:Magenta) (Méthodes:Green) (Fonctions:Red)
4/02/2026
PYTHON programmation objet
Les bases
|
Les variables par l'exemple
- Affectons une valeur à la variable age
1 >>> age = 30
2 >>> age
3 30
- On va ensuite ajouter 10 à la valeur de cette variable
1 >>> age = 30
2 >>> age = age + 10
3 >>> age
4 40
- Il est possible de mettre une variable dans une autre variable.
1 >>> age = 30
2 >>> age2 = age
3 >>> age2
4 30
- On peut mettre à peu près tout ce qu'on veut dans la variable, y compris du texte:
1 >>> age = "J'ai 30 ans"
2 >>> age
3 "J'ai 30 ans"
- Il est possible de concaténer, c'est à dire d'ajouter du texte à du texte:
1 >>> age = age + " et je suis encore jeune!"
2 >>> age
3 "J'ai 30 ans et je suis encore jeune!"
- On peut même multiplier une chaine de caractères.
1 >>> age = "jeune"
2 >>> age * 3
3 'jeunejeunejeune'
- Evidemment, si on essaie de faire des additions avec des variables qui sont des chiffres et d'autres qui sont du texte, l'interpréteur va hurler
1 >>> age = "J'ai 30 ans"
2 >>> age
3 "J'ai 30 ans"
4 >>> age + 1
5 Traceback (most recent call last):
6 File "<stdin>", line 1, in <module>
7 TypeError: cannot concatenate 'str' and 'int' objects
- On remarquera que l'interpréteur est sympa puisqu'il dit ce qui ne va pas: Il ne peut pas concaténer str et int .
Les listes
|
- Les listes (ou list / array ) en python sont une variable dans laquelle on peut mettre plusieurs variables.
Créer une liste en python
1 >>> liste = []
Voir le contenu de la liste en l'appelant
1 >>> liste
2 <type 'list'>
Ajouter une valeur à une liste python
1 >>> liste = [1,2,3]
2 >>> liste
3 [1, 2, 3]
Ajouter après la création de la liste
méthode append
1 >>> liste = []
2 >>> liste
3 []
4 >>> liste.append(1)
5 >>> liste
6 [1]
7 >>> liste.append("ok")
8 >>> liste
9 [1, 'ok']
- Il est possible de mélanger dans une même liste des variables de type différent. On peut d'ailleurs mettre une liste dans une liste.
Afficher un item d'une liste
1 >>> liste = ["a","d","m"]
2 >>> liste[0]
3 'a'
4 >>> liste[2]
5 'm'
Modifier une valeur avec son index
1 >>> liste = ["a","d","m"]
2 >>> liste[0]
3 'a'
4 >>> liste[2]
5 'm'
6 >>> liste[2] = "z"
7 >>> liste
8 ['a', 'd', 'z']
Supprimer une entrée avec un index
Fonction del
1 >>> liste = ["a", "b", "c"]
2 >>> del liste[1]
3 >>> liste
4 ['a', 'c']
Supprimer une entrée avec sa valeur
Méthode remove
1 >>> liste = ["a", "b", "c"]
2 >>> liste.remove("a")
3 >>> liste
4 ['b', 'c']
Inverser les valeurs d'une liste
- Inverser les items d'une liste
méthode reverse
1 >>> liste = ["a", "b", "c"]
2 >>> liste.reverse()
3 >>> liste
4 ['c', 'b', 'a']
Compter le nombre d'items d'une liste
- Il est possible de compter le nombre d'items d'une liste avec la fonction len .
1 >>> liste = [1,2,3,5,10]
2 >>> len(liste)
3 5
Compter le nombre d'occurences d'une valeur
Méthode count
1 >>> liste = ["a","a","a","b","c","c"]
2 >>> liste.count("a")
3 3
4 >>> liste.count("c")
5 2
Trouver l'index d'une valeur
méthode index
1 >>> liste = ["a","a","a","b","c","c"]
2 >>> liste.index("b")
3 3
Manipuler une liste
1 >>> liste = [1, 10, 100, 250, 500]
2 >>> liste[0]
3 1
4 >>> liste[-1] # Cherche la dernière occurence
5 500
6 >>> liste[-4:] # Affiche les 4 dernières occurrences
7 [500, 250, 100, 10]
8 >>> liste[:] # Affiche toutes les occurences
9 [1, 10, 100, 250, 500]
10 >>> liste[2:4] = [69, 70]
11 [1, 10, 69, 70, 500]
12 >>> liste[:] = [] # vide la liste
13 []
Boucler sur une liste
- Pour afficher les valeurs d'une liste, on peut utiliser une boucle:
1 >>> liste = ["a","d","m"]
2 >>> for lettre in liste:
3 ... print lettre
4 ...
5 a
6 d
7 m
- Pour récupérer l'index, utiliser la fonction enumerate .
1 >>> for lettre in enumerate(liste):
2 ... print lettre
3 ...
4 (0, 'a')
5 (1, 'd')
6 (2, 'm')
Les valeurs retournées par la boucle sont des tuples.
Copier une liste
- Beaucoup de débutants font l'erreur de copier une liste de cette manière:
1 >>> x = [1,2,3]
2 >>> y = x
- Or si on change une valeur de la liste y , la liste x sera elle aussi affectée par cette modification:
1 >>> x = [1,2,3]
2 >>> y = x
3 >>> y[0] = 4
4 >>> x
5 [4, 2, 3]
- En fait cette syntaxe permet de travailler sur un même élément nommé différemment
- Alors comment copier une liste qui sera indépendante?
1 >>> x = [1,2,3]
2 >>> y = x[:]
3 >>> y[0] = 9
4 >>> x
5 [1, 2, 3]
6 >>> y
7 [9, 2, 3]
- Pour des données plus complexes, utiliser la fonction deepcopy du module copy
1 >>> import copy
2 >>> x = [[1,2], 2]
3 >>> y = copy.deepcopy(x)
4 >>> y[1] = [1,2,3]
5 >>> x
6 [[1, 2], 2]
7 >>> y
8 [[1, 2], [1, 2, 3]]
Transformer une string en liste
- Transformer une chaine de caractère en liste.
Méthode split
1 >>> ma_chaine = "Olivier:ENGEL:Strasbourg"
2 >>> ma_chaine.split(":")
3 ['Olivier', 'ENGEL', 'Strasbourg']
Transformer une liste en string
Méthode " join "
1 >>> liste = ["Olivier","ENGEL","Strasbourg"]
2 >>> ":".join(liste)
3 'Olivier:ENGEL:Strasbourg'
Trouver un item dans une liste
- Pour savoir si un élément est dans une liste, utiliser le mot clé in de cette manière:
1 >>> liste = [1,2,3,5,10]
2 >>> 3 in liste
3 True
4 >>> 11 in liste
5 False
La fonction range
- La fonction range génère une liste composée d'une simple suite arithmétique.
1 >>> range(10)
2 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Agrandir une liste par une liste
- Pour mettre bout à bout deux listes, utiliser la méthode extend
1 >>> x = [1, 2, 3, 4]
2 >>> y = [4, 5, 1, 0]
3 >>> x.extend(y)
4 >>> print x
5 [1, 2, 3, 4, 4, 5, 1, 0]
Permutations
- La permutation d'un ensemble d'éléments est une liste de tous les cas possibles.
- Si on besoin de cette fonctionnalité, inutile de réinventer la roue, itertools
1 >>> from itertools import permutations
2 >>> list(permutations(['a', 'b', 'c']))
3 [('a', 'b', 'c'), ('a', 'c', 'b'), ('b', 'a', 'c'), ('b', 'c', 'a'), ('c', 'a', 'b'), ('c', 'b', 'a')]
Permutation d'une liste de liste
- Afficher tous les cas possibles d'une liste elle-même composée de liste?
- Outil product de itertools :
1 >>> from itertools import product
2 >>> list(product(['a', 'b'], ['c', 'd']))
3 [('a', 'c'), ('a', 'd'), ('b', 'c'), ('b', 'd')]
Astuces
- Afficher les 2 premiers éléments d'une liste
1 >>> liste = [1,2,3,4,5]
2 >>> liste[:2]
3 [1, 2]
- Afficher le dernier item d'une liste:
1 >>> liste = [1, 2, 3, 4, 5, 6]
2 >>> liste[-1]
3 6
- Afficher le 3ème élément en partant de la fin:
1 >>> liste = [1, 2, 3, 4, 5, 6]
2 >>> liste[-3]
3 4
- Afficher les 3 derniers éléments d'une liste:
1 >>> liste = [1, 2, 3, 4, 5, 6]
2 >>> liste[-3:]
3 [4, 5, 6]
- Additionner deux listes pour les combiner ensemble en utilisant l'opérateur + :
1 >>> x = [1, 2, 3]
2 >>> y = [4, 5, 6]
3 >>> x + y
4 [1, 2, 3, 4, 5, 6]
- Mutiplier une liste:
1 >>> x = [1, 2]
2 >>> x*5
3 [1, 2, 1, 2, 1, 2, 1, 2, 1, 2]
- Utile pour initialiser une liste:
1 >>> [0] * 5
2 [0, 0, 0, 0, 0]
Méthodes de manipulation de listes
Ajouter, Supprimer, trier
|
Les Tuples
- Un tuple est une liste qui ne peut plus être modifiée.
Créer un tuple
1 >>> mon_tuple = ()
Ajouter une valeur à un tuple
- Créer un tuple avec des valeurs
1 >>> mon_tuple = (1, "ok", "olivier")
- Les parenthèses ne sont pas obligatoires mais facilite la lisibilité du code (rappelons que la force de python est sa simplicité de lecture):
1 >>> mon_tuple = 1, 2, 3
2 >>> type(mon_tuple)
3 <type 'tuple'>
- Lorsqu'on créé un tuple avec une seule valeur, ne pas oublier d'y ajouter une virgule, sinon ce n'est pas un tuple.
1 >>> mon_tuple = ("ok")
2 >>> type(mon_tuple)
3 <type 'str'>
4 >>> mon_tuple = ("ok",)
5 >>> type(mon_tuple)
6 <type 'tuple'>
Afficher une valeur d'un tuple
- Le tuple est une sorte de liste, on peut donc utiliser la même syntaxe pour lire les données du tuple.
1 >>> mon_tuple[0]
2 1
- Et évidemment si on essaie de changer la valeur d'un index, l'interpreteur nous insulte copieusement:
1 >>> mon_tuple[1] = "ok"
2 Traceback (most recent call last):
3 File "<stdin>", line 1, in <module>
4 TypeError: 'tuple' object does not support item assignment
A quoi sert un tuple alors?
- Le tuple permet une affectation multiple:
1 >>> v1, v2 = 11, 22
2 >>> v1
3 11
4 >>> v2
5 22
- Il permet également de renvoyer plusieurs valeurs lors d'un appel d'une fonction:
1 >>> def donne_moi_ton_nom():
2 ... return "olivier", "engel"
3 ...
4 >>> donne_moi_ton_nom()
5 ('olivier', 'engel')
- On utilisera un tuple pour définir des sortes de constantes qui n'ont donc pas vocation à changer.
Les Dictionnaires
- Un dictionnaire en python est une sorte de liste mais au lieu d'utiliser des index , on utilise des clés alphanumériques.
Créer un dictionnaire python
- Initialiser un dictionnaire:
1 >>> a = {}
- ou
1 >>> a = dict()
Ajouter des valeurs dans un dictionnaire python
- Il faut indiquer une clé ainsi qu'une valeur:
1 >>> a = {}
2 >>> a["nom"] = "Wayne"
3 >>> a["prenom"] = "Bruce"
4 >>> a
5 {'nom': 'Wayne', 'prenom': 'Bruce'}
- On peut utiliser des clés numériques comme dans la logique des listes .
- Comment récupérer une valeur dans un dictionnaire python?
- La méthode get permet de récupérer une valeur dans un dictionnaire et si la clé est introuvable, on peut donner une valeur à retourner par défaut:
1 >>> data = {"name": "Wayne", "age": 45}
2 >>> data.get("name")
3 'Wayne'
4 >>> data.get("adresse", "Adresse inconnue")
5 'Adresse inconnue'
Vérifier la présence d'une clé dans un dictionnaire python
- Utiliser la méthode haskey pour vérifier la présence d'une clé
1 >>> a.has_key("nom")
2 True
Supprimer une entrée dans un dictionnaire python
- Il est possible de supprimer une entrée en indiquant sa clé, comme pour les listes:
1 >>> del a["nom"]
2 >>> a
3 {'prenom': 'Bruce'}
Récupérer les clés d'un dictionnaire python par une boucle
- Pour récupérer les clés on utilise la méthode keys .
1 >>> fiche = {"nom":"Wayne", "prenom":"Bruce"}
2 >>> for cle in fiche.keys():
3 ... print cle
4 ...
5 nom
6 prenom
Récupérer les valeurs d'un dictionnaire python par une boucle
- Méthode values
1 >>> fiche = {"nom":"Wayne", "prenom":"Bruce"}
2 >>> for valeur in fiche.values():
3 ... print valeur
4 ...
5 Wayne
6 Bruce
Récupérer les clés et les valeurs d'un dictionnaire python par une boucle
- Pour récupérer les clés et les valeurs en même temps, on utilise la méthode items qui retourne un tuple .
1 >>> fiche = {"nom":"Wayne","prenom":"Bruce"}
2 >>> for cle,valeur in fiche.items():
3 ... print cle, valeur
4 ...
5 nom Wayne
6 prenom Bruce
Utiliser des tuples comme clé dans un dictionnaire python
- Une des forces de python est la combinaison tuple/dictionnaire qui fait des merveilles dans certains cas comme lors de l'utilisation de coordonnées.
1 >>> b = {}
2 >>> b[(32)]=12
3 >>> b[(45)]=13
4 >>> b
5 {(4, 5): 13, (3, 2): 12}
Créer une copie indépendante d'un dictionnaire python
- Comme pour toute variable, on ne peut pas copier un dictionnaire en faisant dic1 = dic2
1 >>> d = {"k1":"Bruce", "k2":"Wayne"}
2 >>> e = d
3 >>> d["k1"] = "XXX"
4 >>> e
5 {'k2': 'Wayne', 'k1': 'XXX'}
- Pour créer une copie indépendante, on peut utiliser la méthode copy
1 >>> d = {"k1":"Bruce", "k2":"Wayne"}
2 >>> e = d.copy()
3 >>> d["k1"] = "XXX"
4 >>> e
5 {'k2': 'Wayne', 'k1': 'Bruce'}
Fusionner des dictionnaires python
- La méthode update permet de fusionner deux dictionaires .
1 >>> a = {'nom': 'Wayne'}
2 >>> b = {'prenom': 'bruce'}
3 >>> a.update(b)
4 >>> print(a)
5 {'nom': 'Wayne', 'prenom': 'Bruce'}
Fonctions et Méthodes
| Les fonctions: [ fonction(paramètres) ]
len(), str(), range() Les méthodes: [ variable.méthode(paramètres) ]
|
Les fonctions
- Une fonction (ou function ) est une suite d'instructions que l'on peut appeler avec un nom.
Première fonction
- Créons une fonction qui nous retournera un âge:
1 >>> def indique_mon_age():
2 ... return 30;
3 ...
4 >>> indique_mon_age()
5 30
- On ne peut pas copier coller ce code, on doit entrer chaque ligne à la main et appuyer sur entrée pour retourner à la ligne. Les 3 chevrons et les 3 points sont affichés par l'interpréteur python.
- Tout d'abord pour indiquer à l'interpréteur qu'on veut créer une fonction , on utilisera le mot clé def suivi d'un nom puis de parenthèses et ensuite d'un double point.
- On remarque également qu'il y a un espace entre les 3 points et le mot clé "return", il s'agit d'une indentation , c'est à dire un espace qui améliore non seulement la lecture de la fonction mais qui indique que nous sommes toujours dans la fonction. Lorsque l'action demandée n'est plus dans la fonction, il ne faut plus indenter le texte. Pour indenter du texte, on doit appuyer sur la touche TAB du clavier -ou dans d'autres cas créer 4 espaces manuellement-.
Les paramètres
- Créons une autre fonction:
1 >>> def augmente_moi(a):
2 ... return augmente_moi + 2
3 ...
4 >>> augmente_moi(1)
5 3
- Cette fonction incrémente de 2 une valeur que l'on passe en paramètre.
- Il est d'ailleurs possible d'utiliser plusieurs paramètres:
1 >>> def augmente_moi(a, b):
2 ... return 30 + a + b
3 ...
4 >>> augmente_moi(1, 2)
5 33
- Un paramètre est obligatoire
- Lorsqu'on indique des paramètres à une fonction, ces derniers doivent impérativement être renseignés sans quoi une erreur apparaîtra.
1 >>> def augmente_moi(a, b):
2 ... return 30 + a + b
3 ...
4 >>> augmente_moi(1)
5 Traceback (most recent call last):
6 File "<stdin>", line 1, in <module>
7 TypeError: augmente_moi() takes exactly 2 arguments (1 given)
- L'opérateur splat : * est très souvent utilisé en python.
def ma_function(*var) def ma_function(**var) ma_function(*var) ma_function(**var)
- Une liste en paramètre
- On peut récupérer les valeurs renseignées via une liste:
1 >>> def augmente_moi(*param):
2 ... return param[0] + param[1] + param[2]
3 ...
4 >>> augmente_moi(1, 2, 3)
5 6
6 >>> augmente_moi(10, 20, 30)
7 60
- Rendre obligatoire uniquement certains paramètres avec une liste.
- Si on désire rendre obligatoire uniquement certains paramètres, utiliser la syntaxe suivante:
1 >>> def ma_fiche(prenom, nom, *reste):
2 ... return prenom + " " + nom
3 ...
4 >>> ma_fiche("olivier","engel")
5 'olivier engel'
- On remarque que le paramètre " reste " est précédé d'une étoile * .
- Utiliser un dictionnaire pour les paramètres
- On peut utiliser un dictionnaire en paramètres pour cela on doit ajouter une double étoile: **
1 >>> def ma_fiche(**parametres):
2 ... return parametres["prenom"]
3 ...
4 >>> ma_fiche(prenom="olivier")
5 'olivier'
Utilisation de splat liste au niveau des appels de fonctions
- Reprenons l'exemple de la fonction augmente_moi :
1 >>> def augmente_moi(*param):
2 ... return param[0] + param[1] + param[2]
3 ...
- Nous avons vu qu'il était possible de faire ceci:
1 >>> augmente_moi(1, 2, 3)
2 6
- L'utilisation de l'étoile permet de passer par une liste:
1 >>> data = [1, 2, 3]
2 >>> augmente_moi(*data)
3 6
- Utilisation de splat dictionnaire au niveau des appels de fonctions.
- Prenons l'exemple de cette fonction:
1 >>> def test(firstname="", lastname=""):
2 ... return "{} {}" .format(firstname, lastname)
- Créons notre dictionnaire:
1 >>> data = {'firstname':'olivier', 'lastname':'engel'}
- Et envoyons notre variable avec une étoile *
1 >>> test(*data)
2 'lastname firstname'
- Puis avec deux étoiles **
1 >>> test(**data)
2 'olivier engel'
Portée des variables (variable globale et variable locale)
Une variable déclarée à la racine d'un module est visible dans tout ce module. On parle alors de variable globale .
1 >>> x = "hello"
2 >>> def test():
3 ... print x
4 ...
5 >>> test()
6 hello
Et une variable déclarée dans une fonction ne sera visible que dans cette fonction. On parle alors de variable locale .
1 >>> x = False
2 >>> def test():
3 ... x = "hello"
4 ...
5 >>> test()
6 >>> x
7 False
Les fonctions natives
|
abs |
join |
abs(x)
1 >>> abs(-1)
2 1
all(iterable)
1 >>> liste = [True,True,True,1]
2 >>> all(liste)
3 True
any(iterable)
1 >>> liste = [True,False, True]
2 >>> any(liste)
3 True
bin(x)
1 >>> bin(101)
2 '0b1100101'
callable(object)
1 >>> callable("A")
2 False
3 >>> callable(int)
4 True
str.capitalize()
1 >>> "oLIviER".capitalize()
2 'Olivier'
choice([])
1 >>> import random
2 >>> random.choice([1,2,3,4,5])
3 3
4 >>> random.choice([1,2,3,4,5])
5 2
str.count(string)
1 >>> "olivier".count("i")
2 2
dir(object)
1 >>> dir(int)
2 ['__abs__', '__add__', '__and__', '__class__', '__cmp__', '__coerce__', '__delattr__', '__div__', '__divmod__', '__doc__', '__float__', '__floordiv__', '__format__', '__getattribute__', '__getnewargs__', '__hash__', '__hex__', '__index__', '__init__', '__int__', '__invert__', '__long__', '__lshift__', '__mod__', '__mul__', '__neg__', '__new__', '__nonzero__', '__oct__', '__or__', '__pos__', '__pow__', '__radd__', '__rand__', '__rdiv__', '__rdivmod__', '__reduce__', '__reduce_ex__', '__repr__', '__rfloordiv__', '__rlshift__', '__rmod__', '__rmul__', '__ror__', '__rpow__', '__rrshift__', '__rshift__', '__rsub__', '__rtruediv__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__truediv__', '__trunc__', '__xor__', 'bit_length', 'conjugate', 'denominator', 'imag', 'numerator', 'real']
str.endswith(str)
1 >>> a = "olivier"
2 >>> a.endswith("r")
3 True
4 >>> a.endswith("er")
5 True
6 >>> a.endswith("é")
7 False
eval(expression,globals=None,locals=None)
1 >>> v = 101
2 >>> eval('v+1')
3 102
str.find(string)
1 >>> "olivier".find("i")
2 2
help(element)
1 >>> help(int)
2 Help on class int in module __builtin__:
3 class int(object)
4 | int(x=0) -> int or long
5 | int(x, base=10) -> int or long
6 |
7 | Convert a number or string to an integer, or return 0 if no arguments
8 | are given. If x is floating point, the conversion truncates towards zero.
9 | If x is outside the integer range, the function returns a long instead.
10 |
11 | If x is not a number or if base is given, then x must be a string or
12 | Unicode object representing an integer literal in the given base. The
13 | literal can be preceded by '+' or '-' and be surrounded by whitespace.
14 | The base defaults to 10. Valid bases are 0 and 2-36. Base 0 means to
15 | interpret the base from the string as an integer literal.
16 | >>> int('0b100', base=0)
17 | 4
hex
1 >>> hex(16)
2 '0x10'
str.isalnum()
1 >>> "25".isalnum()
2 True
3 >>> "25b".isalnum()
4 True
5 >>> "25bé".isalnum()
6 True
7 >>> "25bé@".isalnum()
8 False
9 >>> "-".isalnum()
10 False
11 >>> "_".isalnum()
12 False
13 >>> "".isalnum()
14 False
str.isalpha()
1 >>> "x".isalpha()
2 True
3 >>> "-".isalpha()
4 False
5 >>> "12".isalpha()
6 False
7 >>> "jean-claude".isalpha()
8 False
9 >>> "jean claude".isalpha()
10 False
11 >>> "élise".isalpha()
12 True
str.isdigit()
1 >>> "1".isdigit()
2 True
3 >>> "1.5".isdigit()
4 False
5 >>> "1,5".isdigit()
6 False
7 >>> "3b".isdigit()
8 False
9 >>> " ".isdigit()
10 False
str.islower()
1 >>> "olivier".islower()
2 True
3 >>> "Olivier".islower()
4 False
str.isspace()
1 >>> " ".isspace()
2 True
3 >>> "jean louis".isspace()
4 False
5 >>> " ".isspace()
6 True
str.istitle()
1 >>> "Titre".istitle()
2 True
3 >>> "TitrE".istitle()
4 False
5 >>> "Titre de mon site".istitle()
6 False
7 >>> "Titre De Mon Site".istitle()
8 True
str.isupper()
1 >>> "OLIVIER".isupper()
2 True
3 >>> "Olivier".isupper()
4 False
5 >>> "OlivieR".isupper()
6 False
str.join(liste)
1 >>> ":".join(["olivier", "engel"])
2 'olivier:engel'
len(s)
1 >>> len([1,2,3])
2 3
3 >>> len("olivier")
4 7
locals()
1 >>> locals()
2 {'a': 12, '__builtins__': , '__package__': None, 'i': 20, 'v': 101, 'liste': [True, False, True], '__name__': '__main__', '__doc__': None}
str.lower()
1 >>> "OLIVIER".lower()
2 'olivier'
map(function, [])
1 >>> def add_one(x):
2 ... return x + 1
3 ...
4 >>> map(add_one, [1,2,3])
5 [2, 3, 4]
max() / min()
1 >>> max([1,3,2,6,99,1])
2 99
3 >>> max(1,4,6,12,1)
4 12
randint()
1 >>> import random
2 >>> random.randint(1,11)
3 5
random()
1 >>> import random
2 >>> random.random()
3 0.9563522652738929
str.replace(string, string)
1 >>> "olivier".replace("i", "a")
2 'olavaer'
reverse()
1 >>> x = [1,4,7]
2 >>> x.reverse()
3 >>> x
4 [7, 4, 1]
reversed([])
1 >>> list(reversed([1,2,3,4]))
2 [4, 3, 2, 1]
round(number)
1 >>> round(1)
2 1.0
3 >>> round(1.2)
4 1.0
5 >>> round(1.5)
6 2.0
7 >>> round(1.7)
8 2.0
9 >>> round(-1.7)
10 -2.0
11 >>> round(-1.2)
12 -1.0
shuffle([])
1 >>> import random
2 >>> x = [1,2,3,4,5]
3 >>> random.shuffle(x)
4 >>> x
5 [2, 5, 4, 1, 3]
str.startswith(prefix[, start[, end]])
1 >>> "olivier".startswith("ol")
2 True
3 >>> "olivier".startswith(("ol", "eng"))
4 True
5 >>> "olivier".startswith(("xxx", "eng"))
6 False
7 >>> "olivier".startswith("OL")
8 False
9 >>> "olivier".startswith("ol")
10 True
list.sort()
1 >>> l = [5,1,4,2,10]
2 >>> l.sort()
3 >>> l
4 [1, 2, 4, 5, 10]
sorted(iterable)
1 >>> sorted([3,2,12,1])
2 [1, 2, 3, 12]
str.split(séparateur)
1 >>> "olivier:engel".split(":")
2 ['olivier', 'engel']
str.splitlines([keepends])
1 >>> "olivier\n\n\engel\n\ndéveloppeur".splitlines()
2 ['olivier', '', '\\engel', '', 'développeur']
3 >>> "olivier\nengel\ndéveloppeur".splitlines()
4 ['olivier', 'engel', 'développeur']
5 >>> "olivier\n\rengel\n\rdéveloppeur".splitlines()
6 ['olivier', '', 'engel', '', 'développeur']
7 >>> "olivier\r\nengel\r\ndéveloppeur".splitlines()
8 ['olivier', 'engel', 'développeur']
9 >>> "olivier\r\nengel\r\n\r\ndéveloppeur".splitlines()
10 ['olivier', 'engel', '', 'développeur']
11 >>> "olivier\r\nengel\r\n\r\ndéveloppeur".splitlines(True)
12 ['olivier\r\n', 'engel\r\n', '\r\n', 'développeur']
sum(iterable [,start])
1 >>> sum([1,2,3])
2 6
str.title()
1 >>> "Ceci est un titre".title()
2 'Ceci Est Un Titre'
upper()
1 >>> "olivier".upper()
2 'OLIVIER'
zip(*iterables)
1 >>> a = ["olivier", "bruce", "john"]
2 >>> b = ["engel", "wayne", "Wayne"]
3 >>> zip(a,b)
4 [('olivier', 'engel'), ('bruce', 'wayne'), ('john', 'Wayne')]
|
Procédure et fonctions
- Une fonction n'est pas obligée de renvoyer une valeur, on parlera alors dans ce cas plutôt de procédure .