Seite 3 von 3
Verfasst: Dienstag 7. Juni 2005, 23:24
von -Sugar Princes-
hehe
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 (**)
Verfasst: Dienstag 7. Juni 2005, 23:57
von rayo
Hi
Ja ist für variable Anzahl von Parametern:
def test(*args) -> in *args landen alle test(1,'test', None) -> args = [1, 'test', None]
def test(**kwargs) -> in *kwargs landen alle keyword-arguments test(ein=1, test='nix da', rest=None) -> kwargs = {'ein':1,'test':'nix da', 'rest': None}
Bei Tkinter kann man ebe zimlich viele sachen als keyword-arguments übergeben, darum mach ich das dort, um es weiter zugeben beim init der canvas
Gruss
Verfasst: Mittwoch 8. Juni 2005, 02:09
von -Sugar Princes-
so hab jetzt mal deine sachen eingebaut etc.
und CM's Vorschlag mit Docstring ausprobiert aber jetzt kommt Fehlermeldung und er kann den würfel nicht zusammenbringen
denk mal das ich irgendwas im aufbau des docstrings falsch gemacht habe
bitte um hilfe
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
"""
fehlermeldung im def __init__
3 uhr nachts ich geh mal schlafen

- gute nacht

Verfasst: Mittwoch 8. Juni 2005, 21:50
von -Sugar Princes-
mhh! sry leute da hab ich wohl irgendwie einen fehler eingebaut
hab es jetzt genauso wie es hier steht und es funktioniert
vll. ein tippfehler von mir irgendwo na ja wollte es euch nur sagen
