[Python-de] private Klassenmethoden

Andreas Jung lists at andreas-jung.com
Sam Jul 29 16:18:41 CEST 2006



--On 29. Juli 2006 15:48:09 +0200 Timothy Kesten <python-liste at gmx.de> 
wrote:

> Hi Folks,
>
> mittlerweile arbeite ich mich langsam in Python ein.
> Und da taucht f├╝r mich eine Frage auf:
>
> Wie steht es mit "privaten" Methoden innerhalb von Klassen?
>
> Gibt es so etwas? Und wenn ja, wie/wo werden diese definiert?
>

So was gibt es nicht. Es gibt lediglich die Konvention, dass man die Namen 
von privaten Methoden mit einem oder zwei Underscores beginnt.




> Beispiel:
>
> def dummy():
>    print "DUMMY"
>
> class KBmain:
>     def __init__(self,line):
>         self.elements=line.split("~")
>         self.datum=self.elements[0]
>         self.kbnr=self.elements[1]
>
>     dummy()
>
>
> line = "ein Text~noch ein text"
> for i in range(1,5)
>  kb = KBmain(line)
>
>
> lasse ich jetzt dieses Programm laufen, dann wird dummy() nur einmal
> ausgef├╝hrt, obwol doch KBmain 5 mal neu instanziiert wird, oder?

> Schreibe ich dummy() nach __init__ in der class, dann wird dummy 5 x
> ausgef├╝hrt.
>

Weil Dein Code keinen Sinn macht...Was soll der dummy() Aufruf
innerhalb der Klassendefinition tun? Nat├╝rlich wird die Klasse 5x
instanziiert, weil Du dies in der Schleife 5mal machst.


-aj
-------------- nńchster Teil --------------
Ein Dateianhang mit Bin├Ąrdaten wurde abgetrennt...
Dateiname   : nicht verf├╝gbar
Dateityp    : application/pgp-signature
Dateigr├Â├če  : 186 bytes
Beschreibung: nicht verf├╝gbar
URL         : http://starship.python.net/pipermail/python-de/attachments/20060729/716bf701/attachment.pgp


More information about the python-de mailing list