En tant que programmeur, vous vous retrouverez souvent à effectuer une action ou une tâche à plusieurs reprises. Cela peut être fastidieux et prendre du temps, en particulier lorsque vous travaillez avec une base de code volumineuse ou complexe. Les automatiser avec des fonctions est une approche plus efficace pour effectuer de telles tâches. Les fonctions vous permettent d'écrire la logique du code une fois et de l'utiliser n'importe où dans votre programme.

Qu'est-ce qu'une fonction Python?

En Python, une fonction est un bloc de code utilisé pour effectuer une tâche spécifique. Vous n'avez besoin d'écrire une fonction qu'une seule fois, mais vous pouvez l'utiliser plusieurs fois dans votre code. Une fonction peut prendre des arguments en entrée et renvoyer des valeurs de sortie. Ce programme simple montre une fonction qui calcule la somme de trois nombres :

# Fonction Python pour calculer la somme de trois nombres

définitivementcalculer_somme(a, b, c):
retour a+b+c

imprimer (calculate_sum(

instagram viewer
1,2,3)) # renvoie 6
imprimer (calculate_sum(1000, 300,44)) # renvoie 1344
imprimer (calculate_sum(12, 4,78)) # renvoie 94

Dans le programme ci-dessus, la fonction renvoie la somme de trois arguments. Lorsque la fonction est appelée plusieurs fois, elle renvoie une sortie différente pour chaque cas. Une application utile pour cette fonction sera une application de calculatrice.

Définir une fonction en Python

Python a de nombreuses fonctions intégrées disponible pour les développeurs à utiliser. Cependant, ces fonctions intégrées ne suffisent pas toujours à répondre aux exigences de la plupart des projets. Pour répondre aux demandes personnalisées, vous devez définir vos fonctions personnalisées. La définition de fonctions personnalisées est une pratique courante en programmation.

En Python, vous pouvez définir une fonction personnalisée en utilisant le définitivement mot-clé suivi du nom de votre fonction avec une parenthèse devant. Voici un exemple:

définitivementnom_fonction()

Vous devez prendre note de ces règles lors de l'attribution d'un nom de fonction en Python :

  • Les noms de fonction doivent être en minuscules.
  • Les noms de fonction doivent être descriptifs.
  • Utilisez des traits de soulignement pour séparer les mots dans un nom de fonction.

Après avoir défini la fonction, vous devez écrire la logique pour effectuer la tâche souhaitée. Par exemple, cette fonction calcule l'aire d'un triangle :

# Fonction Python pour calculer l'aire d'un triangle

définitivementcalculate_triangle_area(base, hauteur):
aire = (base * hauteur)/2
retour zone

imprimer (calculate_triangle_area(12, 3))

La fonction ci-dessus définit deux paramètres: base et hauteur, divise leur produit par deux et renvoie le résultat en sortie. Vous pouvez écrire la logique que vous souhaitez que votre fonction exécute.

Comprendre les arguments de fonction

Dans les exemples précédents, les fonctions ont pris des arguments pour effectuer des actions. Les arguments de ces exemples sont appelés arguments requis ou positionnels. En Python, vos arguments peuvent être l'un des suivants :

  • Arguments positionnels
  • Arguments de mots clés

Arguments positionnels

Les arguments positionnels doivent être passés dans le bon ordre de définition. Par exemple, si vous définissez une fonction avec des paramètres un B, et c, vous devez transmettre des valeurs pour ces paramètres en conséquence lorsque vous les appelez. Examinons un exemple précédent :

# Fonction Python pour calculer la somme de trois nombres

définitivementcalculer_somme(a, b, c):
retour a+b+c

imprimer (calculate_sum(1,2,3)) # renvoie 6
imprimer (calculate_sum(1000, 300,44)) # renvoie 1344
imprimer (calculate_sum(12, 4,78)) # renvoie 94

Dans le programme ci-dessus, le calculer_somme() La fonction prend trois arguments chaque fois que nous l'appelons. Chaque argument représente un paramètre correspondant. Dans le premier appel de fonction, les nombres 1, 2, et 3 représenter un B, et c par conséquent.

Un paramètre est déclaré dans la définition d'une fonction, tandis qu'un argument est la valeur transmise lorsque vous appelez la fonction. Cette valeur est une représentation de son paramètre correspondant.

Les arguments positionnels sont obligatoires. Si vous ne les ajoutez pas, vous obtiendrez un Erreur-type. L'exemple suivant le démontre :

définitivementcalculer_somme(a, b, c):
retour a+b+c

imprimer (calculate_sum(1,2)) # lève TypeError

Lorsque vous exécutez le programme ci-dessus sur votre machine, vous obtenez une erreur similaire à celle de l'image ci-dessous :

Arguments de mots clés

Les arguments de mots-clés n'ont pas nécessairement besoin d'être passés chaque fois que vous appelez une fonction. Ce sont des arguments facultatifs et n'ont pas besoin de suivre un ordre spécifique. Python nous permet d'utiliser *args et **kwargs pour spécifier des arguments de mot-clé.

En plus d'utiliser *arguments et **kwargs, il est également possible de spécifier des valeurs par défaut pour vos arguments. Cela n'entraînera pas d'erreur si vous oubliez d'ajouter une valeur lors de l'appel de la fonction. Cet exemple donne une illustration :

définitivementcalculer_somme(a, b, c=3):
retour a+b+c

imprimer (calculate_sum(1,2)) # renvoie 6

Dans le programme ci-dessus, lorsque calculer_somme() est appelé, il n'y a pas d'argument pour c ; cela n'affectera pas le programme car c a déjà une valeur par défaut. Vous pouvez spécifier des valeurs par défaut pour autant d'arguments que vous le souhaitez, mais assurez-vous de le faire judicieusement.

Utilisez des fonctions pour organiser votre code

Les fonctions sont utiles pour organiser votre code, le rendre plus lisible et efficace. Avec les fonctions, vous pouvez diviser votre code en morceaux plus petits et réutilisables, plus faciles à comprendre et à gérer. De plus, si vous devez apporter des modifications à votre code, vous n'avez qu'à modifier la fonction nécessaire plutôt que la base de code entière.