0% ont trouvé ce document utile (0 vote)
191 vues11 pages

Fonction Python

Les fonctions sont des blocs de code réutilisables qui permettent de diviser un programme en parties plus petites. Les fonctions Python présentent l'avantage de la réutilisation du code et de l'organisation du programme. Différents types d'arguments peuvent être passés aux fonctions, tels que les arguments requis, les arguments par défaut et les arguments de longueur variable.

Transféré par

Elisabete Grasia Amina
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
191 vues11 pages

Fonction Python

Les fonctions sont des blocs de code réutilisables qui permettent de diviser un programme en parties plus petites. Les fonctions Python présentent l'avantage de la réutilisation du code et de l'organisation du programme. Différents types d'arguments peuvent être passés aux fonctions, tels que les arguments requis, les arguments par défaut et les arguments de longueur variable.

Transféré par

Elisabete Grasia Amina
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 11

Fonction Python

Les fonctions sont l'aspect le plus important d'une application. Une fonction peut
être définie comme le bloc organisé de code réutilisable, qui peut être
appelé chaque fois que nécessaire.
Python nous permet de diviser un grand programme en blocs de construction de
base appelés fonction. La fonction contient l'ensemble de programmation
déclarations entourées de {}. Une fonction peut être appelée plusieurs fois pour
permettre la réutilisation et la modularité du programme Python.
La fonction aide le programmeur à diviser le programme en une partie plus
petite. Il organise le code très efficacement et évite la répétition
du code. Au fur et à mesure que le programme grandit, la fonction rend le
programme plus organisé.
Python nous fournit diverses fonctions intégrées telles
que range() ou print() . Bien que l'utilisateur puisse créer ses fonctions, qui
peuvent être appelées définies par l'utilisateur
les fonctions.
Il existe principalement deux types de fonctions.
 Fonctions définies par l' utilisateur - Les fonctions définies par
l' utilisateur sont celles définies par l' utilisateur pour effectuer la tâche
spécifique.
 Fonctions intégrées - Les fonctions intégrées sont les
fonctions prédéfinies dans Python.
Ici nous aborderons les fonctions définies par l'utilisateur.

Avantage des fonctions en Python


Les fonctions Python présentent les avantages suivants.
 En utilisant des fonctions, nous pouvons éviter de réécrire la même
logique/code encore et encore dans un programme.
 Nous pouvons appeler des fonctions Python plusieurs fois dans un
programme et n'importe où dans un programme.
 Nous pouvons facilement suivre un grand programme Python lorsqu'il est
divisé en plusieurs fonctions.
 La réutilisabilité est la principale réalisation des fonctions Python.
 Cependant, l'appel de fonction est toujours une surcharge dans un
programme Python.
Création d'une fonction
Python fournit le mot-clé def pour définir la fonction. La syntaxe de la fonction
define est donnée ci-dessous.

Syntaxe:
def ma_fonction(paramètres) :
bloc_fonction
expression return

Comprenons la syntaxe de la définition des fonctions.


 Le mot-clé def , ainsi que le nom de la fonction, sont utilisés pour définir
la fonction.
 La règle d'identification doit suivre le nom de la fonction.
 Une fonction accepte le paramètre (argument), et ils peuvent être
facultatifs.
 Le bloc fonction commence par les deux points (:) et les instructions de
bloc doivent avoir la même indentation.

 L' instruction return est utilisée pour renvoyer la valeur. Une fonction ne
peut avoir qu'un seul return

Appel de fonction
En Python, une fois la fonction créée, nous pouvons l'appeler à partir d'une autre
fonction. Une fonction doit être définie avant l'appel de fonction ; sinon, le
L'interpréteur Python renvoie une erreur. Pour appeler la fonction, utilisez le
nom de la fonction suivi des parenthèses.
Considérez l'exemple suivant d'un exemple simple qui imprime le message

"Hello World".
#définition de fonction
def hello_world() :
print ( " bonjour tout le monde " )
# appel de fonction
hello_world() :

Sortir:
Bonjour le monde
La déclaration de retour
L'instruction return est utilisée à la fin de la fonction et renvoie le résultat de la
fonction. Il termine l'exécution de la fonction et transfère
le résultat où la fonction est appelée. L'instruction return ne peut pas être utilisée
en dehors de la fonction.

Syntaxe
return [liste_expressions]

Il peut contenir l'expression qui est évaluée et la valeur est renvoyée à la


fonction appelante. Si l'instruction return n'a pas d'expression ou
n'existe pas lui-même dans la fonction, il renvoie l' objet None .
Considérez l'exemple suivant :

Exemple 1
# Définir la fonction
def somme () :
a = 10
b = 20
c = a+b
return c
# appel de la fonction sum() dans l'instruction print
print ( "La somme est :" ,somme())

Sortir:
La somme est : 30

Dans le code ci-dessus, nous avons défini la fonction nommée summe, et elle a
une instruction c = a+b, qui calcule les valeurs données, et le résultat
est renvoyé par l'instruction return à la fonction appelante.

Exemple 2 Création d'une fonction sans instruction return


# Définir la fonction
def somme () :
a = 10
b = 20
c = a+b
# appel de la fonction sum() dans l'instruction print
print (somme())
Sortir:
None

le code ci-dessus, nous avons défini la même fonction sans l'instruction return
car nous pouvons voir que la fonction summe() a renvoyé le None
objet à la fonction appelante.

Arguments en fonction
Les arguments sont des types d'informations qui peuvent être passés dans la
fonction. Les arguments sont spécifiés entre parenthèses. nous pouvons passer
n'importe quel nombre d'arguments, mais ils doivent être séparés par une
virgule.
Considérez l'exemple suivant, qui contient une fonction qui accepte une chaîne
comme argument.

Exemple 1
#définir la fonction
def func (nom):
print ( " Salut " , nom)
#appel de la fonction
func( "Devansh" )

Sortir:
Salut Devansh

Exemple 2
Fonction #Python pour calculer la somme de deux variables
#définir la fonction
somme def (a,b):
renvoie a+b ;

#prendre les valeurs de l'utilisateur


a = int(input( "Entrez un: " ))
b = int(input( "Entrez b: " ))
#impression de la somme de a et b
print ( "Somme = " ,somme(a,b))
Sortir:
Entrez un : 10
Entrez b: 20
Somme = 30

Appel par référence en Python


En Python, appeler par référence signifie passer la valeur réelle comme
argument dans la fonction. Toutes les fonctions sont appelées par référence,
c'est-à-dire toutes les
les modifications apportées à la référence à l'intérieur de la fonction reviennent à
la valeur d'origine référencée par la référence.

Exemple 1 Passage d'un objet immuable (liste)


#définir la fonction
def change_list(list1) :
liste1.append(20)
liste1.append(30)
print ( " liste à l'intérieur de la fonction = " , liste1)

#définir la liste
liste1 = [10,30,40,50]

#appel de la fonction
change_list(list1)
print ( "liste en dehors de la fonction = " ,list1)

Sortir:
liste à l'intérieur de la fonction = [10, 30, 40, 50, 20, 30]
liste en dehors de la fonction = [10, 30, 40, 50, 20, 30]

Exemple 2 Passage d'un objet mutable (chaîne)


#définir la fonction
def change_string (str):
str = str + " Comment vas-tu "
print ( "impression de la chaîne à l'intérieur de la fonction :" ,str)

string1 = "Salut je suis là"


#appel de la fonction
change_string(string1)

print ( "impression de la chaîne en dehors de la fonction :" ,string1)


Sortir:
impression de la chaîne à l'intérieur de la fonction : Salut je suis là comment
vas-tu
impression de la chaîne en dehors de la fonction : Salut je suis là

Types d'arguments
Il peut y avoir plusieurs types d'arguments qui peuvent être passés au moment de
l'appel de la fonction.
1. Arguments requis
2. Arguments de mots clés
3. Arguments par défaut
4. Arguments de longueur variable

Arguments requis
Jusqu'à présent, nous avons appris l'appel de fonction en Python. Cependant,
nous pouvons fournir les arguments au moment de l'appel de la fonction. En ce
qui concerne
les arguments requis sont concernés, ce sont les arguments qui doivent être
passés au moment de l'appel de fonction avec l'exact
correspondance de leurs positions dans l'appel de fonction et la définition de
fonction. Si l'un des arguments n'est pas fourni dans l'appel de fonction, ou si le
position des arguments est modifiée, l'interpréteur Python affichera l'erreur.
Considérez l'exemple suivant.

Exemple 1
def fonction(nom) :
message = "Salut " +nom
return message
nom = input( "Entrez le nom :" )
print (fonction(nom))

Sortir:
Entrez le nom : Jean
salut Jean
Exemple 2
#la fonction simple_interest accepte trois arguments et renvoie l'intérêt simple
en conséquence
def simple_interet(p,t,r):
return (p*t*r)/100
p = float(input( "Entrez le montant principal ? " ))
r = float(input( "Entrez le taux d'intérêt ? " ))
t = float(input( "Entrez le temps en années ? " ))
print ( "Intérêt simple : " ,simple_interet(p,r,t))

Sortir:
Entrez le montant principal : 5000
Saisissez le taux d'intérêt : 5
Entrez l'heure en années : 3
Intérêt simple : 750,0

Exemple 3
#la fonction calculate renvoie la somme de deux arguments a et b
def calculer(a,b):
return a+b
calculer(10) # cela provoque une erreur car il nous manque un argument
requis b.

Sortir:
TypeError : calculate() missing 1 required positional argument: 'b'

Arguments par défaut


Python nous permet d'initialiser les arguments à la définition de la fonction. Si la
valeur de l'un des arguments n'est pas fournie au moment de
appel de fonction, alors cet argument peut être initialisé avec la valeur donnée
dans la définition même si l'argument n'est pas spécifié à la fonction
appeler.
Exemple 1
def printme(nom,age=22):
print ( "Mon nom est" , nom, "et l'âge est" , age)
printme(name = "jean" )

Sortir:
Je m'appelle Jean et j'ai 22 ans

Exemple 2
def printme(nom,age=22):
print ( "Mon nom est" , nom, "et l'âge est" , age)
printme(name = "jean" ) #la variable age n'est pas passée dans la fonction
#mais la valeur par défaut de age est prise en compte dans la fonction
printme(age = 10,name= "David" )
#la valeur de age est écrasée ici, 10 sera imprimé comme age
Sortir:
Je m'appelle Jean et j'ai 22 ans
Je m'appelle David et j'ai 10 ans

Arguments de longueur variable (*args)


Dans les gros projets, il arrive parfois que l'on ne connaisse pas le nombre
d'arguments à passer à l'avance. Dans de tels cas, Python nous fournit le
flexibilité pour offrir les valeurs séparées par des virgules qui sont traitées en
interne comme des tuples lors de l'appel de fonction. En utilisant la longueur
variable
arguments, nous pouvons passer n'importe quel nombre d'arguments.
Cependant, lors de la définition de la fonction, nous définissons l'argument de
longueur variable en utilisant les *args (étoile) comme *<variable - nom >.
Considérez l'exemple suivant.

Exemple
def printme(*noms):
print ( "le type d'argument passé est " ,type(noms))
print ( "impression des arguments passés..." )
for nom in noms :
print (nom)
printme( "jean" , "David" , "smith" , "nick" )
Sortir:
type of passed argument is <class 'tuple'>
printing the passed arguments...
Jean
David
smith
nick
Dans le code ci-dessus, nous avons passé *names comme argument de longueur
variable. Nous avons appelé la fonction et passé des valeurs qui sont traitées
comme un tuple
intérieurement. Le tuple est une séquence itérable identique à la liste. Pour
imprimer les valeurs données, nous avons itéré les noms *arg en utilisant la
boucle for.

Arguments de mot-clé (**kwargs)


Python nous permet d'appeler la fonction avec le mot-clé arguments. Ce genre
d'appel de fonction va nous permettre de passer les arguments au hasard
ordre.
Le nom des arguments est traité comme des mots-clés et mis en correspondance
dans l'appel et la définition de la fonction. Si la même correspondance est
trouvée, le
les valeurs des arguments sont copiées dans la définition de la fonction.
Considérez l'exemple suivant.

Exemple 1
#function func est appelée avec le nom et le message comme arguments de mot-
clé
def func(nom,message):
print ( " impression du message avec " , nom, " et " , message)

#name et message sont copiés avec les valeurs John et hello respectivement
func(name = "John" ,message= "bonjour" )

Sortir:
printing the message with John et bonjour

Exemple 2 fournissant les valeurs dans un ordre différent à l'appel


#La fonction simple_interest(p, t, r) est appelée avec le mot clé arguments
l'ordre des arguments n'a pas d'importance dans ce cas
def simple_interest(p,t,r):
return (p*t*r)/100
print ( "Intérêt simple : " ,simple_interest(t=10,r=10,p=1900))
Sortir:
Intérêt simple : 1900,0

Portée des variables


Les portées des variables dépendent de l'emplacement où la variable est
déclarée. La variable déclarée dans une partie du programme
peut ne pas être accessible aux autres parties.

En python, les variables sont définies avec les deux types de portées.
1. Variables globales
2. Variables locales

La variable définie à l'extérieur de toute fonction est connue pour avoir une
portée globale, tandis que la variable définie à l'intérieur d'une fonction est
connue pour avoir une
portée locale.
Considérez l'exemple suivant.
Exemple 1 Variable locale
def print_message() :
message = "Bonjour !! Je vais imprimer un message." # le message variable
est local à la fonction elle-même
print (message)
print_message()
print (message) # cela provoquera une erreur car une variable locale ne peut
pas être accessible ici.

Sortir:
Bonjour !! Je vais imprimer un message.
File "/root/PycharmProjects/PythonTest/Test1.py", line 5, in
print(message)
NameError: name 'message' is not defined

Exemple 2 Variable globale


def calculer(*args):
somme=0
pour arg dans args :
somme = somme + argument
print ( "La somme est" , somme)
somme=0
calculer (10,20,30) #60 sera imprimé comme somme
print ( "Valeur de la somme en dehors de la fonction :" ,somme)
# 0 sera imprimé a la Sortie :
Sortir:
La somme est 60
Valeur de la somme en dehors de la fonction : 0

Vous aimerez peut-être aussi