LES FONCTIONS
EN PYTHON
Objectifs
Les objectifs visés à travers ce module sont :
• Connaître les fonctions prédéfinies de Python
• Définir et manipuler les fonctions utilisateurs
• Définir et manipuler des fonctions lumbda
• Utiliser des packages et des modules
• connaître les fonctions offertes par quelques modules python
Les fonctions prédéfinies
■ Python possède une série de fonctions prédéfinies afin de réaliser les fonctions
les plus courantes.
■ Ces fonctions peuvent êtres appelées directement depuis Python sans import
de modules préalables. Elles sont chargées au démarrage de Python.
Des fonctions prédéfinies usuelles
La fonction dir
dir(objet) : Affiche la liste complète de toutes les méthodes associées à un objet.
La fonction help
help(module) : Renvoie des informations sur les fonctions d'un module.
La fonction help
help(module.fonction) : Renvoie des informations sur une fonction particulière.
La fonction type
Type(obj) : Affiche le type de l'objet.
La fonction str
str(valeur) : Convertie la valeur en String.
Les fonctions utilisateurs
• L'instruction return permet de retourner une ou plusieurs valeurs à
l'expression qui a appelé de la fonction ;
• Un return sans valeur spécifiée ou une fonction sans return
renvoie simplement la valeur prédéfinie None.
Les DocString
■ Une des fonctionnalités en Python est son mécanisme de documentation du
code : les doctrings.
■ La docstring est une chaîne de caractères qui est placée à un endroit
spécifique du code pour le décrire.
■ La docstring la plus courante est placée sous une fonction.
⇒ La chaîne de caractère doit être placée juste en dessous de la signature de la
fonction.
Les DocString
• La fonction help() affiche cette documentation dans un shell ou la
fonction spéciale __doc__.
• On peut générer une bonne doc du code avec des commandes
qui extraient ces docstrings.
• Le code Python peut utiliser la docstring pour la lire ou l'afficher.
• On peut mettre des tests dans les docstrings, qui servent alors
d'exemples d'utilisation.
Les DocString
Les fonctions récursives
Une fonction récursive est une fonction qui peut s'appeler elle-même.
Les variables Globales/Locales
global variable
Passage des paramètres
Les paramètres sont passés par valeur ou par référence
• Si vous faites parametre = nouvelle_valeur, le paramètre ne sera modifié que
dans le corps de la fonction.
• Alors que si vous faites parametre.methode_pour_modifier(...), l'objet derrière
le paramètre sera bel et bien modifié.
Les Fonctions avec un nombre
variable de paramètres
Les valeurs des arguments vont être stockés dans un tuple.
Les Fonctions avec un nombre
variable de paramètres
Les Fonctions avec un nombre
variable de paramètres
Les valeurs des arguments transmis doivent être stockés dans un
dictionnaire.
Fonction avec des paramètres par
défaut
Fonction avec des paramètres par
défaut
Si la fonction possède d'autres arguments, ceux par défaut seront
mis à la fin de la liste des paramètres.
Les fonctions anonymes (lambda)
Pour des fonctions très courtes, on peut utiliser des fonctions
anonymes, connues aussi comme expressions lambda.
« lambda »var1, var2, ..., varN : une_expression
Les fonctions anonymes (lambda)
Les Packages et Modules
• Un module est un fichier Python qui permet de regrouper un
ensemble de fonctions.
• Un package est un dossier dans lequel on regroupe un ensemble
de modules.
Création d'un package
Création d'un package
Importer un module de fonctions
Quelques modules Python : Modules
de base
Informations sur les modules et
fonctions
Le module random
Dans ce module, nous allons nous intéresser particulièrement à la
fonction randrange qui peut s'utiliser de deux manières :
Le module math