LANGAGE PYTHON



Fonctions


Une fonction est un bloc d'instructions auquel on a donné un nom. On reconnaît une fonction aux deux parenthèses qui suivent le nom: print(...), input(....) sont des fonctions écrites par les développeurs de python.



Comment écrire une fonction?


Une fonction se déclare avec le mot clé  def  suivi de son nom, voici une fonction qui affiche bonjour puis au revoir.

Le bloc d'instructions associé à la fonction est décalé par rapport au mot clé def:


def dit_bonjour():

    print ("bonjour")

    print ("au revoir")


 

Voyons maintenant comment utiliser cette fonction, il suffit d'appeler son nom:


dit_bonjour()

 


Comment écrire une fonction qui prend des paramètres?


Si une fonction doit manipuler des paramètres , il faut placer des variables qui représentent ces paramètres dans les parenthèses de la fonction, chaque variable étant séparée par une virgule. Ci-dessous on définit une fonction qui prend trois paramètres:  deux nombres représentés par les variables nombre1, nombre2 et une variable operation qui représente une opération à effectuer, la variable operation sera associée lors de l'utilisation de la fonction à  un caractère : '+' pour une addition; '*' pour multiplication; '-' pour soustraction , la fonction affichera le résultat du calcul avec un print:


Définition:


def calcul ( nombre1, nombre2, operation) :

    if operation == "+":

        # affiche le résultat du calcul de nombre1 plus nombre2:

        print( nombre1 + nombre2 )

    elif operation == "*":

        # affiche le résultat du calcul de nombre1 fois nombre2

        print( nombre1 * nombre2 )

    elif operation == "-" :

        # affiche le résultat du calcul de nombre1 moins nombre2

        print( nombre1 - nombre2 )

    else:

        print("désolé cette opération n'est pas prise en compte")


       

Utilisation:


calcul (  3, 4, '*' )   affichera 12



Exercice 10  du niveau 1


Modifier le programme précédent pour qu'il affiche aussi le quotient de la division de nombre1 par nombre 2 ,

le symbole python du quotient d'une division est :  /

on utilisera le caractère "/"  pour reconnaître l'opération.


Ajouter une protection pour interdire l'opération si nombre 2 est égale à 0. Dans ce cas le programme affichera opération impossible



Comment écrire une fonction qui renvoie une valeur ?


Imaginons qu'au lieu d'afficher, on désire que la fonction renvoie la valeur du calcul. Dans ce cas on utilise le mot clé return suivi de la valeur à renvoyer.


Si on écrit le calcul à effectuer à la suite du mot clé return , l'interpréteur python comprend  qu'il faut renvoyer le résultat du calcul.


Si le calcul est impossible, on peut renvoyer l'objet None qui veut dire pas de valeur. Le nouveau code:

 

Définition:


def calcul ( nombre1, nombre2, operation) :

    if operation == "+":

        return nombre1 + nombre2

    elif operation == "*":

        return nombre1 * nombre2 

    elif operation == "-" :

         return nombre1 - nombre2

    else:

        return None


Utilisation:


# ci-dessous, la variable resultat recevra la valeur renvoyée par la fonction calcul ici l'objet nombre 12.

resultat = calcul ( 3 , 4 , "*" )

print(resultat) # affichera 12



Notions de modules


Jusqu'à présent vous n'avez utilisé que des instructions natives du langage python. Il est possible d'utiliser des fonctions écrites par d'autres programmeurs; les fonctions sont alors rangées dans des fichiers d'extension .py,  pour python un fichier .py est un module dont on peut utiliser le contenu dans d'autres modules.


Il existe des instructions python pour citer un module et importer ses fonctions dans un autre module afin de pouvoir les utiliser.


Exemple: voyons comment importer la fonction  "sqrt(...) " du module "math" qui permet de calculer la racine carré d'un nombre:


from math import sqrt


Vous remarquerez que dans l'import on ne met pas les parenthèses de la fonction:


Exemple de code qui calcule une racine carré:


from math import sqrt

# calcul et affichage de la racine carré de 26.

x = sqrt(26)

print (x)


Pour importer toutes les fonctions d'un module, on utilise le mot clé * ( il ne faut pas le faire ).


from math import *


Pour importer plusieurs fonctions d'un module, on les cite séparées par des virgules. Ci-dessous on importe sqrt(..) et cos(..)


from math import sqrt, cos



Exercice 11  du niveau 1


- Placer votre fonction calcul dans un module appelé module1.py

- Créer un autre module appelé module2.py

- Importer la fonction calcul dans la module appelé module2

- Utiliser la fonction calcul pour calculer  4 / 3

 

 

Créé avec HelpNDoc Personal Edition: Créer des sites web d'aide facilement