Changes between Version 140 and Version 141 of python


Ignore:
Timestamp:
Oct 25, 2018, 3:46:06 PM (5 years ago)
Author:
brankm
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • python

    v140 v141  
    16251625}}}
    16261626
    1627 
     1627== vaja96 ==
     1628
     1629Definiraj razred {{{Tocka}}}, ki v konstruktorju (funkcija {{{__init__}}}) sprejme koordinate {{{x}}},{{{y}}} in {{{z}}}. Nato definiraj metodo {{{koordinate}}}, ki vrne seznam. Vrnjen seznam vsebuje tri elemente: prvi element je koordinata x, drugi koordinata y in tretji koordinata z.
     1630
     1631Nato definiraj tri objekte razreda Tocka:
     1632
     1633- tocka1 s koordinatami x=1,y=0,z=0
     1634- tocka2 s koordinatami x=2,y=0,z=0
     1635- tocka3 s koordinatami x=3,y=0,z=0
     1636
     1637na sledeč način
     1638
     1639{{{
     1640#!python
     1641tocka1 = Tocka(1,0,0)
     1642tocka2 = Tocka(2,0,0)
     1643tocka3 = Tocka(3,0,0)
     1644}}}
     1645
     1646Nato definiraj nov razred {{{Krivulja}}}, ki vsebuje spremenljivko z imenom {{{seznam_tock}}}. Ta spremenljivka vsebuje prazen seznam. V razredu {{{Krivulja}}} definirajte tudi metodo {{{dodajTocko}}}, ki sprejme objekt razreda {{{Tocka}}} in ga doda v spremenljivko {{{seznam_tock}}}. Nato v istem razredu definiraj še metodo {{{tocke}}}, ki naredi iteracijo skozi seznam v spremenljivki {{{seznam_tock}}} in za vsak objekt razreda {{{Tocka}}} izpiše koordinate x,y in z.
     1647
     1648Primer izpisa metode {{{tocke}}} za točki T1(1,2,3) in T2(4,5,6) je sledeč
     1649
     1650{{{
     16511 2 3
     16524 5 6
     1653}}}
     1654
     1655Definiraj objekt razreda {{{Krivulja}}} z imenom {{{krivulja}}} in vanj s pomočjo metode {{{dodajTocko}}} dodaj točke {{{tocka1}}}, {{{tocka2}}} in {{{tocka3}}}. Nato pokliči metodo {{{tocke}}} na sledeč način
     1656
     1657{{{
     1658#!python
     1659krivulja.tocke()
     1660}}}
     1661
     1662== vaja97 ==
     1663
     1664Dedovanje v Pythonu pomeni, da lahko razred deduje in uporablja metode drugega razreda. Primer je prikazan spodaj
     1665{{{
     1666#!python
     1667#A --> Razred(parent)
     1668#B --> Izpeljanirazred(child)
     1669class A:        # Definiramo razred A
     1670    _vrednost = 100
     1671    def __init__(self):
     1672        print("Klicanje (parent) razreda A.")
     1673    def A_metoda(self):
     1674        print('Klicanje metode (parent) razreda A.')
     1675    def doloci_lastnost(self, lastnost):
     1676        A.a_vrednost = lastnost
     1677    def dobi_lastnost(self):
     1678        print("Lastnost (parent) razreda A :", A.A_vrednost)
     1679
     1680class B(A): # Izpeljani razred, vzamemo lastnosti iz (parent) razreda
     1681    def __init__(self):
     1682        print("Klicanje konstruktorja izpeljanega razreda B.")
     1683    def B_metoda(self):
     1684        print('Klicanje metode izpeljanega razreda razreda B.')
     1685
     1686c = B()# Objekt (child) izpeljanega razreda B
     1687c.B_metoda()# Izpeljani razred kliče svojo metodo
     1688c.A_metoda()# Izpeljani razred kliče metodo svojega (parent) razreda
     1689c.doloci_lastnost(200)#Izpeljani razred spet kliče metodo svojega (parent)  razreda
     1690c.dobi_lastnost()# Izpeljani razred spet kliče metodo svojega (parent) razreda
     1691}}}
     1692
     1693Definiraj razred {{{GeometrijskaTelesa()}}}, ki vsebuje metodo {{{opis}}} in s pomočjo funkcije {{{print}}} izpiše sledeče besedilo "Ta razred definira geometrijsko telo". Nato definiraj razrede {{{Kvader}}}, {{{Krogla}}} in {{{Valj}}}, ki dedujejo metode razreda {{{GeometrijskaTelesa}}}.
     1694
     1695Nato definiraj objekte vseh treh razredov in preko njih pokliči metodo {{{opis}}} na sledeč način
     1696
     1697{{{
     1698#!python
     1699kvader = Kvader()
     1700krogla = Krogla()
     1701valj = Valj()
     1702
     1703kvader.opis()
     1704krogla.opis()
     1705valj.opis()
     1706}}}
    16281707
    16291708= PythonOCC =