Edit detail for Properties revision 1 of 1

1
Editor: manduch
Time: 2008/05/24 14:56:43 GMT+2
Note:

changed:
-
Properties v Pythone

 V triedach zdedených od triedy object (tzv. new style classes ) môžeme používať properties. Sú to vlastnosti triedy,
ktoré sa tvária ako premenné, ale pristupuje sa k nim pomocou funkcií - metód triedy. Lepšie je to vidieť na príklade. Ešte pripomeniem vzorec na výpočet obvodu, 'obvod=2*Pi*r' kde r je polomer a Pi je číslo 3.141592.

 Príklad s triedou Kruznica, ktorá má property obvod
 
  ::

    class Kruznica(object):

        def __init__(self, polomer=0.0):
            self.polomer = polomer
        
        def __nastavObvod(self,obvod):
            self.polomer = obvod/(2*3.141592)
        
        def __vratObvod(self):
            return self.polomer*2*3.141592
    
        obvod=property(__vratObvod,__nastavObvod)
    
    k=Kruznica(1)
    print k.obvod
    k.obvod=15
    print k.polomer


Properties v Pythone

V triedach zdedených od triedy object (tzv. new style classes ) môžeme používať properties. Sú to vlastnosti triedy, ktoré sa tvária ako premenné, ale pristupuje sa k nim pomocou funkcií - metód triedy. Lepšie je to vidieť na príklade. Ešte pripomeniem vzorec na výpočet obvodu, obvod=2*Pi*r kde r je polomer a Pi je číslo 3.141592.

Príklad s triedou Kruznica, ktorá má property obvod

    class Kruznica(object):

        def __init__(self, polomer=0.0):
            self.polomer = polomer

        def __nastavObvod(self,obvod):
            self.polomer = obvod/(2*3.141592)

        def __vratObvod(self):
            return self.polomer*2*3.141592

        obvod=property(__vratObvod,__nastavObvod)

    k=Kruznica(1)
    print k.obvod
    k.obvod=15
    print k.polomer