Heim >Backend-Entwicklung >Python-Tutorial >Wie geben Sie in Python mehrere Rückgabetypen mit Typhinweisen an?

Wie geben Sie in Python mehrere Rückgabetypen mit Typhinweisen an?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-15 06:33:02369Durchsuche

How Do You Specify Multiple Return Types with Type Hints in Python?

Angeben mehrerer Rückgabetypen mit Typhinweisen in Python

Mit den Typhinweisen von Python können Sie die erwarteten Datentypen für Funktionsparameter und Rückgabewerte angeben . Wenn eine Funktion mehrere Typen zurückgeben kann, stellt sich die Frage, wie dies in Typhinweisen genau dargestellt werden kann.

Union Type (Python 3.10 und höher)

In Python 3.10 und nachfolgende Versionen, das | Mit dem Operator kann ein Union-Typ erstellt werden. Dies ermöglicht eine prägnante und klare Notation für mehrere Rückgabetypen. Zum Beispiel:

def foo(client_id: str) -> list | bool:

Dies zeigt an, dass die foo-Funktion entweder eine Liste oder einen booleschen Wert zurückgeben kann.

Typing.Union (frühere Python-Versionen)

Für frühere Python-Versionen muss die typing.Union-Klasse verwendet werden:

from typing import Union

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

Einschränkungen

Es ist wichtig zu beachten, dass Typhinweise in Python nicht vorhanden sind zur Laufzeit erzwungen. Daher dient es als Entwicklungshilfe und nicht als strenger Typprüfungsmechanismus. Funktionen können immer noch unerwartete Typen zurückgeben, wie unten beispielhaft dargestellt:

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

>>> foo(1)
'Works'

In diesem Fall gibt die Funktion zwar mit Anmerkungen zur Rückgabe einer Liste versehen, aber eine Zeichenfolge zurück. Das Attribut annotations spiegelt jedoch den beabsichtigten Rückgabetyp wider:

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

Weitere Einzelheiten zu Typhinweisen in Python finden Sie in PEP 483. Für weitere Einblicke lesen Sie bitte „Was sind Typhinweise in Python 3.5??“ Mit diesen Techniken können Sie mehrere Rückgabetypen in Ihrem Python-Code genau angeben und so dessen Lesbarkeit und Wartbarkeit verbessern.

Das obige ist der detaillierte Inhalt vonWie geben Sie in Python mehrere Rückgabetypen mit Typhinweisen an?. 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