Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
April 1, 2022 08:41 am GMT

Python : Les Fonctions

Le cours acclr Python est gratuit et sera publi ici sur dev.to. Je publierai un nouvel article tous les deux jours environ. Pour ne rien manquer, vous pouvez me suivre sur twitter : Suivez @EricLeCodeur

Crer vos propres fonctions

Comme vous avez pu le constater jusqu prsent, Python inclut dj plusieurs fonctions afin de nous simplifier la vie.

Le mme principe va s'appliquer dans votre application, cest--dire qu'il est possible de simplifier votre vie et celle de votre quipe en crant des fonctions rutilisables.

Voici les grandes lignes sur comment crer ses propres fonctions.

Dclaration

Pour crer une fonction vous devez utiliser linstruction def suivit du nom de votre fonction, ajouter les parenthses () et enfin les deux : qui indiquerons le dbut de votre bloc de code.

def say_hello():    print("Hello World")

Voil votre premire fonction !

Par contre, ceci nest que la dclaration, pour la lancer il faut lappeler de votre code.

say_hello()# Hello World

Lappel se fait en utilisant le nom de la fonction suivit des parenthses ()

Arguments

Il est possible de crer une fonction avec un ou des arguments. Les arguments sont un concept trs puissant car ils permettent de personnaliser la fonction.

def say_hello(message):    print(message)say_hello("Hello all!")# Hello all!

noter que le nombre dargument de dclaration doit tre identique au nombre dargument lors de lappel. Sinon, Python retournerait une erreur.

Pour viter cette situation, un argument peut avoir une valeur par dfaut. Pour ce faire il faut assigner une valeur largument (argument = valeur par dfaut)

def say_hello(message = "Hello World!"):    print(message)say_hello()# Hello World

Ici, lappel de notre fonction say_hello() na pas dargument. Python va donc utiliser sa valeur par dfaut spcifi lors de sa dclaration.

Du coup, avec ce concept il est possible de rendre un argument optionnel.

Multiples arguments

videmment il est possible davoir plusieurs arguments

def say_hello(message, upper):    if upper:        return message.upper()    else:        return messageprint(say_hello("Hello World", True))

Comme il est galement possible davoir plusieurs valeurs par dfaut

def say_hello(message="Hello", upper=True):    if upper:        return message.upper()    else:        return messageprint(say_hello())

Ici lappel de la fonction say_hello() est possible sans argument car les deux arguments sont optionnels.

Ordre des arguments quand il y a une valeur par dfaut

noter que les arguments qui ont une valeur par dfaut doivent absolument tre placs en dernier.

Voici un exemple qui retournera une erreur :

def say_hello(message="Hello", upper):    if upper:        return message.upper()    else:        return messageprint(say_hello(True))# SyntaxError: non-default argument follows default argument

Le code suivant nest pas valide et retournera une erreur car certains arguments ont une valeur par dfaut mais largument upper est en dernier et na pas de valeur par dfaut. Dans cet exemple il serait impossible pour Python de savoir si largument True doit tre associ la variable message ou upper

Nomm un argument

Si une fonction comporte plusieurs arguments elle peut rapidement devenir complexe lire.

Voici un exemple dune fonction avec plusieurs arguments:

def create_invoice(sub_total, shipping, taxes):    print("...code...")create_invoice(1000, 25, 100)

Lors de lappel de la fonction il faut spcifier 3 arguments de type nombre. Il devient alors difficile de savoir quoi servent ces nombres, du coup la lecture du code nest pas explicite.

Pour viter cette situation, Python permet de spcifier le nom de largument

create_invoice(sub_total=1000, shipping=25, taxes=100)

Comme vous pouvez le constater, cette syntaxe rend la lecture du code beaucoup plus comprhensible.

Cette syntaxe permet galement de changer lordre des arguments

create_invoice(taxes=100, sub_total=1000, shipping=25)

Une fonction qui retourne une valeur

Une fonction peut tre assigne comme valeur une variable

amount = calc_total(500, 50, 25)

Il est possible pour une fonction de retourner une valeur lors de son excution. Pour ce faire vous devez utiliser linstruction return

def calc_total(sub_total, taxes, shipping):    return sub_total + taxes + shipping

Si la fonction na pas dinstruction return elle va retourner None

def say_hello(message):    print(message)return_value = say_hello("Hello World!")print(return_value)# Hello World# None

En labsence de linstruction return la fonction va retourner la valeur None

Conclusion

C'est tout pour aujourd'hui, je publierai un nouvel article tous les deux jours environ. Pour tre sr de ne rien rater vous pouvez me suivre sur twitter : Suivre @EricLeCodeur


Original Link: https://dev.to/ericlecodeur/python-les-fonctions-5bnf

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To