Undressing to each screw - THE DATA SCIENCE LIBRARY http://sigmaquality.pl/category/undressing-to-each-screw/ Wojciech Moszczyński Tue, 30 Mar 2021 07:29:55 +0000 pl-PL hourly 1 https://wordpress.org/?v=6.8.3 https://sigmaquality.pl/wp-content/uploads/2019/02/cropped-ryba-32x32.png Undressing to each screw - THE DATA SCIENCE LIBRARY http://sigmaquality.pl/category/undressing-to-each-screw/ 32 32 Kilka prostych przykładów z programowanie objektowe w Python https://sigmaquality.pl/undressing-to-each-screw/moje-narzedzia/kilka-prostych-przykladow-z-programowanie-objektowe-w-python-240420202112/ Fri, 24 Apr 2020 19:13:56 +0000 http://sigmaquality.pl/kilka-prostych-przykladow-z-programowanie-objektowe-w-python-240420202112/ 240420202112 Koty ¶ W 1]: class kolor_kota ( obiekt ): def __init__ ( self , imię , kolor ): self . imię = imię self [...]

Artykuł Kilka prostych przykładów z programowanie objektowe w Python pochodzi z serwisu THE DATA SCIENCE LIBRARY.

]]>
240420202112

Koty

W 1]:
class  kolor_kota ( obiekt ):  
    def  __init__ ( self ,  imię ,  kolor ):  
        self . imię  =  imię  
        self . kolor  =  kolor
    
W 2]:
nk1  =  kolor_kota ( 'Kremówka' ,  'ruda' )  
nk2  =  kolor_kota ( 'Helen' ,  'biało-szary' )
W [3]:
print ( 'imię nk1:' , nk1 . imię )  
print ( 'kolor nk1:' , nk1 . kolor )  
print ( 'imię nk2:' ,  nk2 .  imię )  
print ( 'kolor nk2:' ,  nk2 . kolor )
imię nk1: Kremówka
kolor nk1: ruda
imię nk2:  Helen
kolor nk2: biało-szary

Dane kotów

In [4]:
class Dane_kotów(object): 
    def __init__(self, nazwa, kolor, rok, miejsce_urodzenia):
        self.nazwa = nazwa 
        self.kolor = kolor 
        self.rok = rok 
        self.miejsce_urodzenia = miejsce_urodzenia 
In [5]:
k1 = Dane_kotów('Helen', 'biało-czarny',2014,'Pruszków') 
print(k1.rok)
2014

Psy

In [6]:
class Psy(object):
    def __init__(self, imię, kolor):
             self.imię = imię
             self.kolor = kolor   
In [7]:
p1 = Psy('Daks', 'rudy')      
p2 = Psy('Foker', 'biały')
print(p1.imię)
print(p2.kolor)
Daks
biały

Traktory

In [8]:
class Traktory(object):
    def __init__(self, model, kolor, producent, udźwig):
        self.kolor = kolor 
        self.producent = producent 
        self.udźwig = udźwig 
        self.model = model
     
    def start(self): 
        print("Jedzie")
    
    def stop(self): 
        print("Staje")
        
    def przyspieszenie(self): 
        print("przyspieszenie...Przyśpieszenie działa")
    
    def skrzynia_biegów(self, Typ_skrzyni): 
        print("Praca_biegów")
        
        
Traktor1 = Traktory("Ursus C-152","Ursus", 'Czerwony', '487kNT' )    
In [9]:
print('stop:  ',Traktor1.stop()) #<-- funkja stop działa
print('udźwig:',Traktor1.udźwig) #<-- Atrybut __init__ działa
Staje
stop:   None
udźwig: 487kNT

Działka

In [10]:
class Dzialka: 
    
    def __init__(self, dlugosc, szerokosc, koszt_metra=0): 
        self.dlugosc = dlugosc 
        self.szerokosc = szerokosc 
        self.koszt_metra = koszt_metra
        
    def obwod(self): 
        return 2 * (self.dlugosc + self.szerokosc) 
        
    def powierzchnia(self): 
        return self.dlugosc * self.szerokosc
        
    def cena(self): 
        area = self.powierzchnia() 
        return (area * self.koszt_metra)/1000
        
        
In [11]:
Konstancin = Dzialka(430, 120, 185)

print("Obwód działki w konstancinie: 
print("Powierzchnia działki w konstancinie: 
print("Cena działki w konstancinie: tyś. zł 
Obwód działki w konstancinie: 1100
Powierzchnia działki w konstancinie: 51600 m^2
Cena działki w konstancinie: tyś. zł 9546.0

Wykres

In [12]:
class MyDataClass:
    
    def __init__(self, data, time):
        self.data = data
        self.time = time
    
    def plot(self): 
        plt.plot(self.time, self.data)

import matplotlib.pyplot as plt
In [13]:
data = [1,4,5,7,12,5]
time = [1,2,3,4,5,6]
kot = MyDataClass(data,time)
In [14]:
kot.plot()

Class z drukowaniem

In [22]:
class Rectangle:
    def __init__(self, length, breadth, unit_cost=0):
        self.length = length
        self.breadth = breadth
        self.unit_cost = unit_cost
        # print("Area of Rectangle: 

    def __str__(self):
        return ("Area of Rectangle: 

    def get_perimeter(self):
        return 2 * (self.length + self.breadth)

    def get_area(self):
        return self.length * self.breadth

    def calculate_cost(self):
        area = self.get_area()
        return area * self.unit_cost
In [24]:
print(Rectangle(123,45,13))
Area of Rectangle: 5535 cm^2
Cost of rectangular field: Rs. 71955 
In [25]:
class Rectangle:
    def __init__(self, length, breadth, unit_cost=0):
        self.length = length
        self.breadth = breadth
        self.unit_cost = unit_cost
        print(self)

    def __repr__(self):
        area_str = "Area of Rectangle: 
        cost_str = "Cost of rectangular field: Rs. 
        return area_str + "n" + cost_str

    def get_perimeter(self):
        return 2 * (self.length + self.breadth)

    def get_area(self):
        return self.length * self.breadth

    def calculate_cost(self):
        area = self.get_area()
        return area * self.unit_cost
In [26]:
r = Rectangle(160, 120, 2000)
Area of Rectangle: 19200 cm^2
Cost of rectangular field: Rs. 38400000 
In [ ]:
 
In [ ]:
 

Artykuł Kilka prostych przykładów z programowanie objektowe w Python pochodzi z serwisu THE DATA SCIENCE LIBRARY.

]]>
(B29) CatBoostClassifier #2 https://sigmaquality.pl/undressing-to-each-screw/catboostclassifier/b29-catboostclassifier-2__060420202152/ Wed, 08 Apr 2020 13:08:20 +0000 http://sigmaquality.pl/b29-catboostclassifier-2__060420202152/ Artykuł (B29) CatBoostClassifier #2 pochodzi z serwisu THE DATA SCIENCE LIBRARY.

]]>
Artykuł (B29) CatBoostClassifier #2 pochodzi z serwisu THE DATA SCIENCE LIBRARY.

]]>
20_PY. Klasy w Python3 https://sigmaquality.pl/undressing-to-each-screw/moje-definicje/20_py-klasy-w-python3/ Tue, 02 May 2017 06:32:00 +0000 http://sigmaquality.pl/?p=2536 Klasy w Python3 są pudełkami, do których wkłada się funkcje lub zmienne. Aby zdefiniować takie puste pudełko, należy wykonać kod.  class MojePudełko: pass Pass informuje [...]

Artykuł 20_PY. Klasy w Python3 pochodzi z serwisu THE DATA SCIENCE LIBRARY.

]]>

Klasy w Python3 są pudełkami, do których wkłada się funkcje lub zmienne. Aby zdefiniować takie puste pudełko, należy wykonać kod. 

class MojePudełko:
    pass

Pass informuje Pythona, że to koniec instrukcji. Klasa „MojePudełko” jest pusta.

Tworzenie klas i podklas

Można tworzyć klasy i podklasy. Innymi słowy można tworzyć pudełka w pudełkach. Klasy w Python3 nazywane są rodzicami a podklasy dziećmi tych klas.

Poniższy kod tworzy pustą klasę „samochody”, następnie tworzy dwie puste podklasy: „osobowe” i „ciężarowe”. Dodatkowo kod tworzy podklasy dla samochodów osobowych: „dostawcze” i „rodzinne”.

class samochody:
    pass
class ciężarowe(samochody):
    pass
class osobowe(samochody):
    pass
class dostawcze(osobowe):
    pass
class rodzinne (osobowe):
    pass
 
Schemat utworzonej struktury pustych klas i podklas.

Tworzenie instancji w klasach

 Jeżeli klasy zostały porównane do pudełek, to podklasy są pudełkami w pudełkach. Wtedy instancje można porównać do przegródek w tych pudełkach. 

W przykładzie z samochodami takimi instancjami mogą być dane o samochodach takie jak: moc silnika, pojemność bagażnika czy prędkość maksymalna.

Można zauważyć, że poszczególne klasy mogą mieć te same instancje np. moc silnika, długość, całkowita masa pojazdu. Niektóre instancje będą jednak specyficzne dla określonych klas. Instancja pojemność bagażnika nie będzie miała zastosowania w samochodach ciężarowych.

Poniższy kod dodaje instancje do poszczególnych klas samochodów. Kod należy wkleić pod wcześniejszym kodem zakładającym klasy.

pojemność_bagażnika = osobowe()
pojemność_silnika = samochody()
pojemność_skrzyni_ładunkowej = ciężarowe()
moc_silnika = samochody()

Instancje są przyporządkowane do głównych klas i emigrują do podklas. W głównych klasach nie może być instancji, ponieważ nie zakładamy istnienia samochodu, który nie był by ciężarówką ani samochodem osobowym (niebrane pod uwagę są autobusy i pojazdy specjalne).

Powyższy kod można zobrazować schematem. W żółtych polach pokazane są instancje przypisane do poszczególnych klas.

Klasy w Python3 służą do porządkowania i skracania kodu. Klasy można porównać do pudełek czy zbiorów. W tych pudełkach znajdują się instancje, które można porównać do specyficznych lub uniwersalnych przegródek.

Jeżeli zostanie utworzona klasa: „dowód osobisty” to do tej klasy możemy przypisać wszelkie instancje związane z danymi personalnym: Imię, nazwisko, kolor oczu, PESEL, datę wydania dokumentu oraz kto wydał ten dokument.

Jeżeli powstanie klasa: „dane do faktury”, nazwy niektórych instancji będą podobne, lecz zdecydowana większość instancji będzie się znacznie różnić.

W następnym wpisie będę kontynuował klasy w Python3, zajmę się również definiowaniem funkcji w klasach.

 

Artykuł 20_PY. Klasy w Python3 pochodzi z serwisu THE DATA SCIENCE LIBRARY.

]]>