Maison >développement back-end >Tutoriel Python >Journée Tout ce que vous devez savoir sur les fonctions en Python

Journée Tout ce que vous devez savoir sur les fonctions en Python

DDD
DDDoriginal
2025-01-08 20:42:44483parcourir

Explication détaillée des fonctions Python : définition, types d'appel et de paramètres

Day Everything You Need to Know About Functions in Python

Définition de la fonction et fonction

Une fonction est un bloc de code réutilisable qui est exécuté uniquement en cas de besoin. En Python, les fonctions sont définies à l'aide du mot-clé def.

Par exemple, le code suivant définit une fonction somme :

<code class="language-python">def sum(a, b):
  print(a + b)</code>

Cette fonction calcule la somme de deux entiers a et b. Lorsque vous avez besoin de trouver la somme de deux nombres, vous pouvez appeler directement la fonction sum(a, b).

Appel de fonction

Appeler une fonction signifie exécuter le code à l'intérieur de la fonction via le nom de la fonction suivi de parenthèses. Par exemple :

<code class="language-python">def sum(a, b):
  print(a + b)

sum(1, 3)</code>

Ici :

  • a et b sont des paramètres dans la définition de la fonction.
  • 1 et 3 sont les valeurs des paramètres (paramètres réels) transmises à la fonction.
  • sum est le nom de la fonction.

Type de paramètre

Les fonctions Python prennent en charge quatre types de paramètres :

  1. Paramètres obligatoires : Paramètres qui doivent être fournis lors de l'appel de la fonction. S'il n'est pas fourni, Python lancera une exception TypeError.
<code class="language-python">def sum(a, b):
  print(a + b)

sum(1, 3)  # 正确
sum()      # TypeError</code>

a et b sont des paramètres obligatoires car ils n'ont pas de valeur par défaut.

  1. Arguments de mots clés : Transmettez les paramètres en spécifiant explicitement le nom du paramètre.
<code class="language-python">def new_print(a, b):
   print(f"{a} is a friend of {b}")

new_print(b="Alice", a="Bob")</code>

Sortie : Bob est un ami d'Alice

Les paramètres de mots-clés attribuent correctement des valeurs aux paramètres correspondants même si les paramètres sont dans le mauvais ordre.

  1. Paramètre par défaut : Définissez la valeur par défaut du paramètre, qui peut être omise lors de l'appel de la fonction.
<code class="language-python">def sum(a=0, b=0):
   print(a + b)

sum()      # 输出:0
sum(1, 3)  # 输出:4</code>

Même si aucune valeur pour a et b n'est fournie, la fonction s'exécutera normalement car elles ont une valeur par défaut de 0.

  1. Paramètres variables : La fonction peut accepter n'importe quel nombre de paramètres.

    a. *args : utilisé pour recevoir un nombre quelconque de paramètres non-mots-clés, accessibles sous forme de tuples à l'intérieur de la fonction.

<code class="language-python">def sum(*numbers):
   total = 0
   for i in numbers:
     total += i
   print(total)

sum(1, 2, 3, 4)  # 输出:10</code>

b. **kwargs : utilisé pour recevoir un nombre quelconque de paramètres de mots-clés, accessibles sous la forme d'un dictionnaire à l'intérieur de la fonction.

<code class="language-python">def print_kwargs(**kwargs):
  for key, value in kwargs.items():
     print(f"{key}={value}")

print_kwargs(name="Alice", age=30, city="New York")</code>

Quatre méthodes d'échange numérique

Les quatre méthodes suivantes peuvent échanger les valeurs​​de deux nombres :

Méthode 1 : Utiliser des variables temporaires

<code class="language-python">P = 5
Q = 4
temp = P
P = Q
Q = temp</code>

Méthode 2 : Déballage du tuple

<code class="language-python">P = 5
Q = 4
P, Q = Q, P</code>

Méthode 3 : Utiliser des opérateurs au niveau du bit

<code class="language-python">P = 5
Q = 4
P = P ^ Q
Q = P ^ Q
P = P ^ Q</code>

Méthode 4 : Utiliser l'addition et la soustraction

<code class="language-python">P = 5
Q = 4
P = P + Q
Q = P - Q
P = P - Q</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn