Comment appeler une fonction dans Python (Exemple)

⚡ Résumé intelligent

Fonctions dans Python Les fonctions sont des blocs de code réutilisables qui s'exécutent lorsqu'ils sont appelés, définis par l'instruction `def`. Elles acceptent des arguments, des valeurs de retour et utilisent une indentation cohérente pour regrouper les instructions qui leur appartiennent.

  • 🧩 instruction de définition : Une fonction est définie par « def », un nom et des parenthèses, suivis de deux points qui ouvrent le bloc d'instructions indenté.
  • 📞 Appel de fonctions : Écrire le nom de la fonction suivi de parenthèses exécute son code, ce qui permet de réutiliser la même logique à de nombreuses reprises.
  • Échancrure: Python regroupe le corps d'une fonction par une indentation cohérente au lieu d'accolades, de sorte qu'un espace manquant provoque une erreur d'indentation.
  • (I.e. Arguments: Les valeurs passées entre parenthèses deviennent des paramètres, et les valeurs par défaut ou les arguments nommés rendent chaque appel flexible.
  • 🇧🇷 Valeurs de retour : L'instruction return renvoie un résultat à l'appelant ; sans elle, une fonction renvoie None.
  • 🤖 Aide à l'IA : Les assistants IA tels que GitHub Copilot génèrent des squelettes de fonctions, des arguments et des chaînes de documentation à partir d'une brève invite.

Comment appeler une fonction dans Python

Qu'est-ce que la fonction dans Python?

A Fonction dans Python Une méthode est un fragment de code qui s'exécute lorsqu'il est référencé. Elle permet d'utiliser le même code à plusieurs endroits dans un programme. On l'appelle aussi méthode ou procédure. Python Il offre de nombreuses fonctions intégrées telles que print(), input(), compile() et exec(), mais il vous laisse également la liberté de créer vos propres fonctions.

Comment définir et appeler une fonction dans Python

Une fonction dans Python est définie par l’instruction « def » suivie du nom de la fonction et de parenthèses ( () ).

Exemple :

Définissons une fonction à l'aide de la commande « def func1(): » et appelons-la. Le résultat de la fonction sera « J'apprends ». Python une fonction".

Définir et appeler une fonction dans Python

L'appel de fonction func1() invoque notre def func1() et affiche la commande « J'apprends ». Python Fonction « Aucune ».

Il existe un ensemble de règles dans Python programmation pour définir une fonction.

  • Tous les arguments ou paramètres d'entrée doivent être placés entre ces parenthèses.
  • La première instruction de la fonction peut être une instruction facultative — la chaîne de documentation (docstring) de la fonction.
  • Le code à l'intérieur de chaque fonction commence par un deux-points (:) et doit être indenté (espace).
  • L'instruction `return (expression)` interrompt l'exécution d'une fonction, en renvoyant éventuellement une valeur à l'appelant. Une instruction `return` sans argument est équivalente à `return None`.

Importance de l'indentation (espace) dans Python

Avant de nous familiariser avec Python fonctions, il est important que nous comprenions la règle d'indentation pour déclarer Python fonctions, et ces règles sont applicables à d'autres éléments de Python ainsi que la déclaration de conditions, de boucles ou de variables.

Python suit un style d'indentation particulier pour définir le code. Puisque Python Les fonctions n'ont pas de délimiteurs explicites, comme des accolades, pour indiquer leur début et leur fin ; elles doivent se fier à l'indentation. Prenons l'exemple simple de la commande « print ». Si l'on écrit la fonction « print » juste après la ligne `def func1():`, le message d'erreur suivant s'affiche : « erreur d'indentation : bloc indenté attendu ».

Définir et appeler une fonction dans Python

Maintenant, lorsque vous ajoutez l'indentation (espace) devant la fonction « print », l'impression devrait se dérouler comme prévu.

Définir et appeler une fonction dans Python

Une indentation d'au moins un caractère suffit pour que votre code fonctionne correctement. Toutefois, il est recommandé de prévoir une indentation de 3 à 4 caractères pour appeler votre fonction.

Il est également nécessaire, lors de la déclaration de l'indentation, de conserver la même indentation pour le reste du code. Par exemple, dans la capture d'écran ci-dessous, si l'on appelle une autre instruction « toujours dans func1 » et qu'elle n'est pas déclarée juste après la première instruction d'affichage, une erreur d'indentation s'affichera : « unindent ne correspond à aucun autre niveau d'indentation ».

Définir et appeler une fonction dans Python

Maintenant, lorsque nous appliquons la même indentation aux deux instructions et que nous les alignons sur la même ligne, nous obtenons le résultat attendu.

Définir et appeler une fonction dans Python

Comment fonctionne la valeur de retour ?

La commande de retour dans Python indique la valeur à renvoyer à l'appelant de la fonction. Prenons l'exemple suivant pour mieux comprendre.

Étape 1) La fonction ne renvoie rien

On observe ici le cas où une fonction ne « retourne » pas de valeur. Par exemple, si l'on souhaite calculer le carré de 4, la fonction devrait renvoyer « 16 » lors de son exécution. C'est bien le cas avec la commande « print x*x », mais lorsqu'on appelle la fonction « print square », elle renvoie « None ». Cela s'explique par le fait que, lors de l'appel à la fonction, la récursivité ne s'effectue pas et l'exécution s'interrompt. Python Renvoie « None » en cas de dépassement de la fin de la fonction.

Définir et appeler une fonction dans Python

Étape 2) Remplacez la commande d'impression par une commande d'affectation

Pour plus de clarté, nous remplaçons la commande d'impression par une commande d'affectation. Vérifions le résultat.

Définir et appeler une fonction dans Python

Lorsque vous exécutez la commande « print square (4) », elle renvoie la valeur de l'objet. Comme aucune fonction spécifique n'est appliquée ici, elle renvoie « None ».

Étape 3) Utilisez la fonction « return » et exécutez le code.

Nous allons maintenant voir comment récupérer le résultat à l'aide de la commande « return ». Lorsque vous utilisez la fonction « return » et exécutez le code, le résultat sera « 16 ».

Définir et appeler une fonction dans Python

Étape 4) Exécutez la commande « imprimer le carré »

Fonctions dans Python sont eux-mêmes un objet, et un objet a une certaine valeur. Nous verrons ici comment Python Cette fonction traite un objet. Lorsque vous exécutez la commande « print square », elle renvoie la valeur de l'objet. Comme aucun argument n'a été fourni, aucune fonction spécifique n'est exécutée ; la fonction renvoie donc une valeur par défaut (0x021B2D30) qui correspond à l'emplacement de l'objet. En pratique, Python Dans ce programme, vous n'aurez probablement jamais besoin de faire cela.

Définir et appeler une fonction dans Python

Arguments dans les fonctions

Un argument est une valeur transmise à la fonction lors de son appel.

Autrement dit, du côté appelant, il s'agit d'un argument, et du côté de la fonction, d'un paramètre.

Voyons comment Python Les arguments fonctionnent.

Étape 1) Les arguments sont déclarés dans la définition de la fonction. Lors de l'appel de la fonction, vous pouvez lui transmettre les valeurs de ces arguments comme indiqué ci-dessous.

Définir et appeler une fonction dans Python

Étape 2) Pour déclarer une valeur par défaut pour un argument, assignez-lui une valeur lors de la définition de la fonction.

Définir et appeler une fonction dans Python

Exemple : x n'a pas de valeur par défaut. La valeur par défaut de y est 0. Lorsqu'on ne fournit qu'un seul argument lors de l'appel à la fonction de multiplication, Python attribue la valeur fournie à x tant que keeping La valeur de y est égale à 0. Par conséquent, le produit de x*y est égal à 0.

Définir et appeler une fonction dans Python

Étape 3) Cette fois, nous allons changer la valeur à y=2 au lieu de la valeur par défaut y=0, et cela renverra la sortie comme (4×2)=8.

Définir et appeler une fonction dans Python

Étape 4) Vous pouvez également modifier l'ordre dans lequel les arguments sont passés. PythonIci, nous avons inversé l'ordre des valeurs x et y, soit x=4 et y=2.

Définir et appeler une fonction dans Python

Étape 5) Plusieurs arguments peuvent également être passés sous forme de tableau. Dans cet exemple, nous appelons les arguments multiples (1, 2, 3, 4, 5) à l'aide de la fonction (*args).

Exemple : Nous avons déclaré plusieurs arguments comme étant les nombres (1,2,3,4,5) ; lorsque nous appelons la fonction (*args), elle affiche la sortie comme (1,2,3,4,5).

Définir et appeler une fonction dans Python

Conseils:

  • In Python La version 2.7 ne prend pas en charge la surcharge de fonctions. La surcharge de fonctions permet de créer plusieurs méthodes portant le même nom avec une implémentation différente. La surcharge de fonctions est entièrement prise en charge dans Python 3.
  • Il existe une certaine confusion entre méthodes et fonctions. Les méthodes dans Python sont associées à des instances d'objets, contrairement aux fonctions. Python appelle une méthode, il lie le premier paramètre de cet appel à la référence d'objet appropriée. En termes simples, une fonction autonome dans Python est une « fonction », alors qu’une fonction qui est un attribut d’une classe ou d’une instance est une « méthode ».

Voici l'intégralité Python Code 3

#define a function
def func1():
   print ("I am learning Python function")
   print ("still in func1")
   
func1()

def square(x):
  	return x*x
print(square(4))

def multiply(x,y=0):
	print("value of x=",x)
	print("value of y=",y)
    
	return x*y
  
print(multiply(y=2,x=4))

Voici l'intégralité Python Code 2

#define a function
def func1():
   print " I am learning Python function"
   print " still in func1"
   
func1()

def square(x):
  	return x*x
print square(4)

def multiply(x,y=0):
	print"value of x=",x
	print"value of y=",y
    
	return x*y
  
print multiply(y=2,x=4)

FAQ

Oui. UNE Python La fonction peut renvoyer plusieurs valeurs en les séparant par des virgules après le mot-clé return. Python les regroupe dans un tuple, que l'appelant peut décompresser en variables séparées, par exemple a, b = func().

`*args` regroupe les arguments positionnels supplémentaires dans un tuple, tandis que `**kwargs` regroupe les arguments nommés supplémentaires dans un dictionnaire. Ces deux conventions permettent à une fonction d'accepter un nombre variable d'entrées ; les noms `args` et `kwargs` ne sont qu'une convention et non une obligation.

Une docstring est une chaîne de caractères placée en première position dans une fonction pour documenter son fonctionnement. Elle est écrite entre triples guillemets et peut être lue à l'exécution via l'attribut `__doc__` de la fonction ou la fonction `help()`.

Une lambda est une petite fonction anonyme définie sur une seule ligne avec le mot-clé `lambda` au lieu de `def`. Elle convient aux fonctions courtes et éphémères passées à des fonctions telles que `map()`, `filter()` et `sorted()`. Voir ceci : fonction lambda guider.

Oui. Une fonction qui s'appelle elle-même est une fonction récursive. La récursivité permet de résoudre des problèmes qui se décomposent en sous-problèmes plus petits et similaires, comme les factorielles. Toute fonction récursive a besoin d'un cas de base qui arrête les appels, sinon… Python génère une erreur de récursion.

Une variable locale est créée à l'intérieur d'une fonction et n'existe que pendant l'exécution de cette fonction. Une variable globale est définie en dehors de toute fonction et est accessible partout. Pour modifier une variable globale à l'intérieur d'une fonction, il faut d'abord la déclarer avec le mot-clé `global`.

GitHub Copilot suggère un corps de fonction complet à partir de son nom ou d'un court commentaire, incluant les paramètres, les instructions de retour et la documentation. Il propose également la gestion des cas limites et des tests, vous permettant ainsi de vous concentrer sur la logique plutôt que sur le code.ping blocs de définition standard.

Les fonctions organisent le code d'IA et d'apprentissage automatique en étapes réutilisables telles que le chargement des données, le prétraitement, l'entraînement et l'évaluation. Elles garantissent la lisibilité et la testabilité des expériences, et des frameworks comme TensorFlow et scikit-learn exposent la majeure partie de leur comportement via des fonctions clairement nommées.

Résumez cet article avec :