Welche Vorteile hat Typhinweis in Python? [geschlossen]

8

Ich habe die PEP 484 - Tipptipps

gelesen

Wenn sie implementiert wird, gibt die Funktion den Typ der Argumente an, die akzeptiert und zurückgegeben werden.

%Vor%

Meine Frage ist, Was sind die Vorteile von Typ Hinting mit Python, wenn implementiert?

Ich habe TypeScript benutzt, wo Typen nützlich sind (JavaScript ist in Bezug auf Typidentifikation ein wenig dumm), während Python mit Typen irgendwie intelligent ist, welche Vorteile können Tipping für Python bringen, wenn es implementiert wird? Verbessert dies die Python-Leistung?

    
Deena 06.07.2016, 05:41
quelle

2 Antworten

6

Typhinweis kann helfen mit:

  1. Datenvalidierung und Codequalität (Sie können das auch mit assert machen).
  2. Geschwindigkeit des Codes, wenn Code kompiliert werden soll, da einige Annahmen getroffen werden können und eine bessere Speicherverwaltung.
  3. Dokumentationscode und Lesbarkeit.

Ich generelle fehlende Typhinweis ist auch von Vorteil:

  1. Viel schnelleres Prototyping.
  2. Mangel an Notwendigkeit Typ Hinweise in den meisten Fällen - Ente immer Ente - tun es Variable wird sich nicht wie Ente wird Fehler ohne Typhinweis.
  3. Lesbarkeit - wirklich brauchen wir in den meisten Fällen keinen Typhinweis.

Ich denke, das ist gut, dass Typhinweis optional ist, NICHT ERFORDERLICH wie Java, C ++ - Überoptimierung tötet Kreativität - wir brauchen uns wirklich nicht auf den Typ zu konzentrieren, sondern auf Algorithmen - Ich persönlich denke, dass besser eine Zeile schreiben sollte von Code stattdessen 4, um einfache Funktion wie in Java zu definieren:)

%Vor%

Stattdessen

%Vor%

... oder verwenden Sie Vorlagen / Generika

    
Chameleon 06.07.2016 05:58
quelle
6

Nehmen Sie ein Beispiel für die typisierte Funktion,

%Vor%

und eine allgemeine Funktion.

%Vor%

Typprüfung mit mypy auf add1

%Vor%

würde zu

führen %Vor%

die Ausgänge für die verschiedenen Eingangsarten in add2 ,

%Vor%

Beachten Sie, dass add2 allgemein ist. Ein TypeError wird erst nach der Ausführung der Zeile ausgelöst, dies kann mit der Typprüfung vermieden werden. Mit der Typprüfung können Sie ganz zu Anfang Typinkombinationen identifizieren.

Vorteile:

  • Einfacheres Debugging == Zeit gespart
  • Reduzierte manuelle Typprüfung
  • Einfachere Dokumentation

Nachteile:

  • Schöne Schönheit des Python-Codes.
All Іѕ Vаиітy 06.07.2016 06:48
quelle

Tags und Links