Was sind variable Annotationen in Python 3.6?

Python 3.6 wird veröffentlicht.PEP 494 - Release-Zeitplan für Python 3.6 Erwähnt das Ende Dezember, so ging ich durch Was ist neu in Python 3.6 um zu sehen, erwähnen sie dievariable Anmerkungen:

PEP 484 Eingeführter Standard für Typanmerkungen von Funktionsparametern, a.k.a. Typhinweise. Dieser PEP fügt Python eine Syntax hinzu, mit der die Variablentypen einschließlich Klassenvariablen und Instanzvariablen mit Anmerkungen versehen werden:

  primes: List[int] = []

  captain: str  # Note: no initial value!

  class Starship:
     stats: Dict[str, int] = {}

Genau wie bei Funktionsanmerkungen misst der Python-Interpreter Variablenanmerkungen keine besondere Bedeutung bei und speichert sie nur in einem speziellen Attribut__annotations__ einer Klasse oder eines Moduls. Im Gegensatz zu Variablendeklarationen in statisch typisierten Sprachen besteht das Ziel der Annotationssyntax darin, auf einfache Weise strukturierte Typmetadaten für Tools und Bibliotheken von Drittanbietern über den abstrakten Syntaxbaum und das @ anzugebe__annotations__ attribute.

So nach dem, was ich gelesen habe, sind sie Teil der Typhinweise aus Python 3.5, beschrieben inWas sind Tippfehler in Python 3.5.

Ich folge demcaptain: str undclass Starship Beispiel, aber nicht sicher über die letzte: Wie funktioniertprimes: List[int] = [] erklären? Definiert es eine leere Liste, die nur Ganzzahlen zulässt?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage