Heim >Backend-Entwicklung >Python-Tutorial >Wie spezifiziere ich in Python mehrere Rückgabetypen mit Typhinweisen?

Wie spezifiziere ich in Python mehrere Rückgabetypen mit Typhinweisen?

Barbara Streisand
Barbara StreisandOriginal
2024-11-25 08:22:11986Durchsuche

How to Specify Multiple Return Types in Python with Type Hints?

Angeben mehrerer Rückgabetypen mit Typhinweisen

Wenn Sie mit Funktionen arbeiten, die verschiedene Datentypen zurückgeben können, z. B. eine Liste oder einen booleschen Wert, Es ist wichtig, die erwarteten Rückgabetypen mithilfe von Typhinweisen richtig anzugeben. Dies verbessert die Lesbarkeit des Codes und ermöglicht die Typprüfung.

Verwendung der Python 3.10-Syntax

Ab Python 3.10 ist die bevorzugte Methode zum Angeben mehrerer Rückgabetypen die Verwendung der Pipe ( |)-Operator zum Erstellen eines Union-Typs. Die Syntax lautet wie folgt:

def foo(id) -> list | bool:
    # ...

In diesem Beispiel kann die Funktion foo() entweder eine Liste oder einen booleschen Wert zurückgeben.

Verwendung von typing.Union für frühere Python-Versionen Versionen

Für Python-Versionen vor 3.10 können Sie die typing.Union-Klasse verwenden, um eine Union zu erstellen Typ:

from typing import Union

def foo(client_id: str) -> Union[list, bool]:
    # ...

Erzwingung von Typhinweisen

Es ist wichtig zu beachten, dass Typhinweise in Python nicht erzwungen werden, was bedeutet, dass keine Laufzeittypprüfung durchgeführt wird. Sie dienen in erster Linie als beschreibendes Werkzeug bei der Codeentwicklung und -dokumentation.

Beispiel

Betrachten Sie den folgenden Code:

>>> def foo(a: str) -> list:
...     return "Works"
... 

>>> foo(1)
'Works'

In diesem Beispiel Obwohl die Funktion mit Anmerkungen versehen ist, um eine Liste zurückzugeben, gibt sie eine Zeichenfolge zurück. Die Typanmerkung ist jedoch weiterhin im Attribut __annotations__ festgelegt:

>>> foo.__annotations__ 
{'return': <class 'list'>, 'a': <class 'str'>}

Zusätzliche Ressourcen

Weitere Informationen zu Typhinweisen finden Sie in den folgenden Ressourcen:

  • PEP 483: Tipphinweise
  • Was sind Geben Sie Hinweise in Python 3.5 ein??

Das obige ist der detaillierte Inhalt vonWie spezifiziere ich in Python mehrere Rückgabetypen mit Typhinweisen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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