Ordinateurs

Fonctions en Python – TurboFuture

Je suis un développeur de logiciels avec un grand intérêt pour l’analyse de données et les statistiques.

Les fonctions sont des blocs de code qui sont encapsulés sous un nom de fonction afin qu’ils puissent être exécutés en appelant le nom de la fonction. Les fonctions en Python peuvent être de deux types : les fonctions intégrées et les fonctions définies par l’utilisateur.

Les fonctions intégrées sont celles qui accompagnent l’installation de Python en tant que bibliothèques. Print(), input(), list() et tuple() sont quelques-unes des fonctions intégrées que nous avons vues jusqu’à présent. Les fonctions définies par l’utilisateur sont celles que nous créons dans nos programmes afin qu’un bloc de code particulier puisse être réutilisé.

La syntaxe d’une fonction ressemble à :

def function_name( input_params ):
   "function_docstring" # documentation string
   # body of function goes here
   return [return_value] # returns an optional value

Voici les parties importantes d’une fonction :

  • Le mot clé définitivement désigne le point de départ d’un bloc fonctionnel.
  • Le mot-clé def est suivi du nom de la fonction, de parenthèses et de deux-points. Les deux-points et l’indentation du code qui suit indiquent le début et la fin d’un corps de fonction.
  • S’il y a des paramètres d’entrée qui doivent être passés pour que la fonction effectue certaines opérations, ils sont placés entre parenthèses.
  • Le function_docstring représente la documentation pour la fonction donnée. Il n’est pas obligatoire d’avoir une chaîne de documentation pour chaque fonction.
  • Après la docstring facultative, le corps de la fonction est ajouté. Comme mentionné précédemment, le corps doit avoir une identification appropriée pour être considéré comme faisant partie de la fonction.
  • Le corps de la fonction peut se terminer par une instruction return qui peut renvoyer une valeur si nécessaire. Il n’est pas obligatoire de toujours renvoyer quelque chose d’une fonction.
A lire aussi :  Examen de l'extendeur Wi-Fi double bande Rock Space Ac2100

Une fois qu’une fonction est créée, elle peut être appelée en utilisant function_name(params_optional) dans une autre fonction ou depuis la ligne de commande de l’interpréteur python.

Définir une fonction

Considérez l’exemple suivant :

Faites défiler pour continuer

#!/usr/bin/python3
 
def printMe( x ):
    print("My value is : ", x)
    
def sayHello( name ):
   "function which says hello" 
   print( "Hello, ", name, "!" )
   return 
 
def getMySquare( x ):
    return ( x*x )
 
printMe(12)
sayHello("Sam")
print( "Square of 12 = ",getMySquare( 12 ) )

La fonction printMe montre comment avoir une fonction simple avec une seule ligne et aucune valeur de retour. Dès que l’indentation change, l’interpréteur python comprend que la fonction est terminée.

La fonction sayHello a une instruction return à la fin. Ceci est similaire à l’instruction break que nous avons vue dans le flux de contrôle. Il revient juste de la fonction. GetMySquare est une fonction où une valeur appropriée est renvoyée. Notez que la fonction docstring est ignorée par l’interpréteur python et qu’elle ne modifie pas la sortie.

La sortie du programme ci-dessus sera :

Ma valeur est : 12 Bonjour, Sam ! Carré de 12 = 144

Spécification des paramètres par défaut

Il est possible de spécifier des paramètres d’entrée par défaut pour une fonction. Cela peut être pratique si l’appelant préfère avoir moins de paramètres passés en arguments.

#!/usr/bin/python3
 
def printinfo( name, country = "India" ):
   "This prints name and country information"
   print ( "Name: ", name )
   print ( "Country: ", country )
   return
 
# Now you can call printinfo function
printinfo( "Sherin", "USA" )
printinfo( "Sherin" )
printinfo( country = "Israel", name = "Mikhael" )

Le premier appel printinfo() indique comment la valeur par défaut de « country » est remplacée lorsqu’une valeur est transmise par l’appelant. Le deuxième appel printinfo() indique comment la valeur par défaut est prise si aucune valeur correspondante n’est transmise. Il n’est pas obligatoire de spécifier les paramètres dans l’ordre dans lequel ils apparaissent dans la définition de la fonction. Pour garantir que la valeur correcte est mappée à chaque paramètre d’entrée, nous pouvons spécifier les paramètres sous forme de paires param=valeur séparées par des virgules. Le troisième appel à printinfo() indique comment cela peut être fait.

A lire aussi :  Les meilleurs traitements de texte open source gratuits pour Windows

La sortie du programme ci-dessus sera :

Nom : Sherin Pays : États-Unis Nom : Sherin Pays : Inde Nom : Mikhael Pays : Israël

© 2019 Sam Shepards

Bouton retour en haut de la page