
aber erst nachträglich

ja ich guck mal

_____________________________
*args = *arguments
**kwargs = **keywords
richtig?
es muss immer erst das wort mit einem (*) stehen danach das mit (**)
Code: Alles auswählen
class Cube(Tk.Canvas):
"""
Würfel wird instanziert
"""
def __init__(self,parent,*args, **kwargs):
try:
kwargs['width']
except KeyError:
kwargs['width'] = 500
try:
kwargs['height']
except KeyError:
kwargs['height'] = 500
Tk.Canvas.__init__(self, parent, *args, **kwargs)
self.root = parent
self.center = kwargs['width']/2
self.scale = kwargs['width']/2.0*0.5
"""
- def __init__ = Aufruf einer starken privaten Methode, die nur innerhalb der Klasse gilt
- Erstellung eines Objektes in einer Klasse
- *args = * arguments; ** kwargs = * keywords arguments
Alle Argumente mit einem Stern (*) stehen vor den Argumenten mit zwei Sternen (**)
- Falls width und height nicht übergeben werden, wird width und height mit je 500 (Breite und Höhe der Canvas) pixel erstellt
- Vaiable Anzahl von Parametern
Beispiel:
def test (*args) -> in *args landen alle test(1,'test',None)
-> args = [1,'test',None]
def test (**kwargs) -> in **kwargs landen alle Keyboard-arguments test (ein=1,test='nix da', rest=None)
-> kwargs = {'ein':1,'test':'nix da','rest':None}
- Tkinter kann viele Sachen als Keyword-Arguments übergeben, Weitergabe beim __init__ des Canvas
"""