Typehinting

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
CrackPod
User
Beiträge: 205
Registriert: Freitag 30. Juni 2006, 12:56

Hallo,

zuerstmal: Es tut mir Leid, wenn das jetz eie Frage wär die sofort mim Manual geklärt wär, aber ich komm mit dem Manual noch nich wirklich zurecht....
Jetz die Frage:
Gibt es Typehinting in Python?(Hat evtl nen anderen Namen)
Typehinting ist, dass man bei den Parametern mit angibt, von welchem Typ der Parameter sein muss

Code: Alles auswählen

class Typehinting:
[...]
    def machWas (self,int: zahl):
        return zahl*2
Greetz
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

CrackPod hat geschrieben: Typehinting ist, dass man bei den Parametern mit angibt, von welchem Typ der Parameter sein muss

Code: Alles auswählen

class Typehinting:
[...]
    def machWas (self,int: zahl):
        return zahl*2
Hi CrackPod!

Nein! Du kannst aber in der Funktion einen Fehler auslösen, wenn nicht der richtige Typ übergeben wurde.

Code: Alles auswählen

import types

def hallo_welt(vorname, nachname):
    assert(isinstance(vorname, types.StringTypes))
    assert(isinstance(nachname, types.StringTypes))
lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hi Crackpod!

Du kannst auch eine Umwandlung versuchen. Lässt sich der Parameter nicht umwandeln, gibt es einen Fehler.

Code: Alles auswählen

def flaeche(laenge, breite):
    laenge = float(laenge)
    breite = float(breite)
    return laenge * breite
lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten