Colon in Python Funktion bei Parametern?

2 Antworten

Das sind Type Hints:

https://peps.python.org/pep-0484/

Das Wort Hint sagt es schon, aber hier nochmal in aller Deutlichkeit:

While these annotations are available at runtime through
the usual __annotations__ attribute, no type checking
happens at runtime.

Python ist halt dynamisch typisiert und im Prinzip darf jede Funktion beim gleichen Parameter verschieden Typen akzeptieren.


samarisqaa 
Beitragsersteller
 12.07.2023, 09:07

Macht Sinn, danke!

0
Bedeutet das dann, dass der parameter1 nur ein float sein kann,

Nein, aber du bist auf der richtigen Spur. Python ist eine dynamisch typisierte Sprache, d.h. die Typen werden an sich erst zur Laufzeit festgelegt.

Das hat aber gewisse Nachteile, vor allem wenn Programme groß und komplex werden. Daher hat man in Python die sogenannten type hints eingeführt: die erzwingen keine Typen, helfen aber dem Entwickler zu verstehen, welcher Typ wo erwartet wird.

Spezielle Editoren für Python können das auch verwenden, um darauf hinzuweisen, wenn versehentlich der falsche Typ verwendet wird. Das funktioniert aber nie so zuverlässig wie bei einer statisch typisierten Sprache (wie es z.B. Java ist).