Maison > développement back-end > Tutoriel Python > Python `return`, `return None` et No `return` : quelles sont les principales différences ?

Python `return`, `return None` et No `return` : quelles sont les principales différences ?

Patricia Arquette
Libérer: 2024-12-17 17:33:13
original
1105 Les gens l'ont consulté

Python `return`, `return None`, and No `return`: What are the Key Differences?

Return, Return None et No Return en Python : quelle est la différence ?

Considérez les fonctions suivantes :

1

2

3

4

5

6

7

8

9

10

def my_func1():

    print("Hello World")

    return None

 

def my_func2():

    print("Hello World")

    return

 

def my_func3():

    print("Hello World")

Copier après la connexion

Bien qu'ils semblent tous renvoyer Aucun, il existe des différences subtiles dans leur comportement.

Différences de comportement

Lorsque ces fonctions sont exécutées :

  • my_func1() : Imprime "Bonjour World" et renvoie explicitement Aucun.
  • my_func2() : Imprime « Hello World » et renvoie implicitement Aucun (le comportement par défaut des fonctions).
  • my_func3() : Imprime "Hello World" et ne renvoie rien (pas même Aucun).

Considérations d'utilisation

Retour Aucun

  • Utiliser pour les fonctions destinées à renvoie une valeur, même si elle est Aucune.
  • La valeur renvoyée peut être utilisée ou ignorée ultérieurement dans le code.
  • Évitez de renvoyer Aucun s'il n'y a pas de valeurs de retour alternatives.

Retour

  • Utiliser pour quitter explicitement une fonction , similaire aux instructions break dans les boucles.
  • La valeur de retour n'est pas pertinente et ne doit pas être utilisé.
  • Utile lorsque vous souhaitez uniquement quitter la fonction sans renvoyer de valeur spécifique.

Aucun retour

  • Utiliser pour les fonctions qui n'ont pas besoin de renvoyer de valeur ou qui indiquent simplement une exécution réussie.
  • Comme le retour, la valeur renvoyée n'est pas destinée à être utilisée ou capturé.
  • Similaire aux fonctions void dans d'autres langages comme C et Java.

Exemples

Obtenir le nom d'une mère ( Retour Aucun) :

1

2

3

4

5

def get_mother(person):

    if is_human(person):

        return person.mother

    else:

        return None

Copier après la connexion

Trouver un prisonnier avec un couteau (Retour) :

1

2

3

4

5

6

def find_prisoner_with_knife(prisoners):

    for prisoner in prisoners:

        if "knife" in prisoner.items:

            prisoner.move_to_inquisition()

            return # No need to check the other prisoners.

    raise_alert()

Copier après la connexion

Définir le nom d'une mère (Pas de retour) :

1

2

3

def set_mother(person, mother):

    if is_human(person):

        person.mother = mother

Copier après la connexion

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal