Heim Backend-Entwicklung Python-Tutorial Python-Funktionen: Return None, Return oder No Return-Anweisung – welche sollten Sie verwenden?

Python-Funktionen: Return None, Return oder No Return-Anweisung – welche sollten Sie verwenden?

Dec 10, 2024 am 11:24 AM

Python Functions: Return None, Return, or No Return Statement—Which Should You Use?

Python-Funktionen: Eintauchen in Return-Anweisungen

Viele Python-Programmierer stehen vor dem Dilemma, zwischen der Verwendung von return None, return oder no return-Anweisungen zu wählen überhaupt beim Schreiben von Funktionen. In diesem Artikel werden die subtilen Unterschiede zwischen diesen Ansätzen untersucht und Hinweise gegeben, wann jeder angemessen ist.

Das Funktionstrio:

Berücksichtigen Sie die folgenden drei Funktionen:

def my_func1():
  print("Hello World")
  return None

def my_func2():
  print("Hello World")
  return

def my_func3():
  print("Hello World")
Nach dem Login kopieren

Auf den ersten Blick scheinen alle drei Funktionen None zurückzugeben. Bei näherer Betrachtung gibt es jedoch nuancierte Unterschiede in ihrem Verhalten.

Verwendung von „return None“:

Dies weist ausdrücklich darauf hin, dass die Funktion darauf ausgelegt ist, einen Wert zurückzugeben In diesem Fall: Keine. Dieser Wert kann anschließend an anderer Stelle im Code verwendet werden. return None wird normalerweise verwendet, wenn es einen bestimmten Rückgabewert gibt, den die Funktion bereitstellen soll.

Zum Beispiel gibt die folgende Funktion die Mutter einer Person zurück, wenn es sich um einen Menschen handelt, andernfalls None:

def get_mother(person):
    if is_human(person):
        return person.mother
    else:
        return None
Nach dem Login kopieren

Return verwenden:

Dies funktioniert ähnlich wie break-Anweisungen in Schleifen. Es dient in erster Linie dazu, die Funktionsausführung zu beenden, wobei der Rückgabewert keine Rolle spielt. Obwohl dies nicht häufig erforderlich ist, kann die Rückkehr in bestimmten Situationen nützlich sein.

Betrachten Sie dieses Beispiel, in dem wir in einer Gruppe von Gefangenen nach einem Gefangenen mit einem Messer suchen:

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 remaining prisoners or raise an alert
    raise_alert()
Nach dem Login kopieren

Beachten Sie, dass die Der Rückgabewert der Funktion sollte keiner Variablen zugewiesen werden, da er nicht für die weitere Verwendung vorgesehen ist.

Verwendung von „Keine Rückgabe“. Aussage:

Dieser Ansatz gibt auch None zurück, aber er impliziert, dass die Funktion ohne einen bestimmten Rückgabewert erfolgreich abgeschlossen wurde. Es erfüllt im Wesentlichen die gleiche Rolle wie die Rückgabe in Void-Funktionen in Sprachen wie C oder Java.

def set_mother(person, mother):
    if is_human(person):
        person.mother = mother
Nach dem Login kopieren

Schlussfolgerung:

Obwohl alle drei Methoden letztendlich „None“ zurückgeben, tun sie es dienen unterschiedlichen Zwecken. return None wird verwendet, wenn ein bestimmter Rückgabewert übermittelt werden muss. return wird verwendet, um die Funktionsausführung explizit zu beenden, und die Verwendung keiner Return-Anweisung zeigt eine erfolgreich abgeschlossene Funktion ohne einen angegebenen Rückgabewert an.

Das obige ist der detaillierte Inhalt vonPython-Funktionen: Return None, Return oder No Return-Anweisung – welche sollten Sie verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verwenden Sie Python, um die ZiPF -Verteilung einer Textdatei zu finden So verwenden Sie Python, um die ZiPF -Verteilung einer Textdatei zu finden Mar 05, 2025 am 09:58 AM

So verwenden Sie Python, um die ZiPF -Verteilung einer Textdatei zu finden

So herunterladen Sie Dateien in Python So herunterladen Sie Dateien in Python Mar 01, 2025 am 10:03 AM

So herunterladen Sie Dateien in Python

Bildfilterung in Python Bildfilterung in Python Mar 03, 2025 am 09:44 AM

Bildfilterung in Python

Wie benutze ich eine schöne Suppe, um HTML zu analysieren? Wie benutze ich eine schöne Suppe, um HTML zu analysieren? Mar 10, 2025 pm 06:54 PM

Wie benutze ich eine schöne Suppe, um HTML zu analysieren?

Wie man mit PDF -Dokumenten mit Python arbeitet Wie man mit PDF -Dokumenten mit Python arbeitet Mar 02, 2025 am 09:54 AM

Wie man mit PDF -Dokumenten mit Python arbeitet

Wie kann man mit Redis in Django -Anwendungen zwischenstrichen Wie kann man mit Redis in Django -Anwendungen zwischenstrichen Mar 02, 2025 am 10:10 AM

Wie kann man mit Redis in Django -Anwendungen zwischenstrichen

Einführung des natürlichen Sprach -Toolkits (NLTK) Einführung des natürlichen Sprach -Toolkits (NLTK) Mar 01, 2025 am 10:05 AM

Einführung des natürlichen Sprach -Toolkits (NLTK)

Wie führe ich ein tiefes Lernen mit Tensorflow oder Pytorch durch? Wie führe ich ein tiefes Lernen mit Tensorflow oder Pytorch durch? Mar 10, 2025 pm 06:52 PM

Wie führe ich ein tiefes Lernen mit Tensorflow oder Pytorch durch?

See all articles