Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



Python a Databáze

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: Python a Databáze

Autor: janickaaa1919

16:58:33 01.11.2011

Tak něco už mám, ale nejede mi to..
Mrknete na to nekdo prosim...

class Polozka(object):

def __init__(self, id, nazev, mistnost, cena, koef_amortizace):
self.id = id
self.nazev = nazev
self.mistnost = mistnost
self.cena = cena
self.koef_amortizace = koef_amortizace


majetek = []
majetek = [self.id, self.nazev, self.mistnost, self.cena, self.koef_amortizace]

def amortizace(self):

self.zbytkova_cena = self.zbytkova_cena - self.puvodni_cena * self.koef_amortizace
def __str__(self):
String_id = ""
String_nazev = ""
String_mistnost = ""
String_cena = ""

String_id= str(self.id)
String_nazev = str(nazev)
String_mistnost = str(mistnost)
String_cena = str(cena)

Vysledek = String_id + " " + String_nazev + " " + String_mistnost + " " + String_cena
return Vysledek




class Inventar(object):
"""Třída reprezentuje databázi majetku VŠB. Nad touto databází je
možno provádět jednoduché operace přidání, listování počtu
položek a listování souhrnné ceny majetku. """

db = {}

def __init__(self):
self.inventaar = {}
self.majetek = nazev

def pridej(self, majetek):
self.invertar[id] = majetek

def cena_polozek(self, fakulta):

#return sum([ self.inventar[x].zbytkova_cena for x in self.inventar.keys() if fakulta in x])
return sum([ self.inventar[x].zbytkova_cena for x in self.inventar.keys()])

def proved_amortizaci(self, fakulta):

for x in self.inventar:
if (x == fakulta ):
x.zbytkova_cena = self.zbytkova_cena - self.puvodni_cena * self.koef_amortizace
pass

def main():

inventar = Inventar()
inventar.pridej(Polozka("FEI/4605511", "Zidle", "A1036", 1600, 0.05))
inventar.pridej(Polozka("FEI/4605512", "Stul", "A1036", 2360, 0.05))
inventar.cena_polozek("FEI")
inventar.proved_amortizaci("FEI")
print inventar.cena_polozek("FEI")
print inventar.cena_polozek("HGF")


#if __name__ == '__main__':
# main()

Citovat příspěvek

 

Python a Databáze

Autor: janickaaa1919

11:02:03 01.11.2011

zdravím potřebovala bych nakopnout... či poradit co stim mam vlastně dělat..

zadání:

Naprogramujte třídy Inventar a Zidle.

POPIS TŘÍDY "POLOZKA":

Třída reprezentuje fyzickou položku v majetku VŠB. Její atributy a metody jsou vypsány níže:

Id položky je vždy string ve tvaru /cislo, kde je jedna z následujících zkratek: FEI, HGF, EkF, FBI, FMMI, FS, FAST.

Metoda amortizace provede amortizaci položky podle zadaního amortizačního koeficientu. Při vytvoření objektu je puvodni_cena a zbytkova_cena nastavena na stejnou hodnotu. Pro provedení amortizace bude zbytkova_cena snizena. Vzorec pro výpočet zbytkové ceny je následující:
zbytkova_cena = zbytkova_cena - puvodni_cena * koef_amortizace

Metoda __str__ bude vracet řetězec v následujícím tvaru: Typ: , ID: , Mistnost: , kde hodnoty mezi šipkami budou aktuální hodnoty položky. Metoda se volá například při použití print. Příklad je uveden níže.

Její atributy a metody jsou vypsány níže:

Třída Polozka:

atributy:
id
nazev
mistnost
puvodni_cena
zbytkova_cena
koef_amortizace
metody:
__init__(self, id, nazev, mistnost, cena, koef_amortizace)
amortizace(self)
__str__(self)
POPIS TŘÍDY "INVENTAR":

Třída reprezentuje databázi majetku VŠB. Nad touto databází je možno provádět jednoduché operace přidání, listování počtu položek a listování souhrnné ceny majetku.

Databázi, která obsahuje majetek implementujte jako slovník, kde klíčem bude id položky.

Metoda cena_polozek vrátí zbytkovou cenu všeh položek, které patří dané fakultě.

Metoda pocet_polozek vrátí počet položek, které patří dané fakultě.

Metoda proved_amortizaci provede amortizaci položek, které patří dané fakultě.

Atributy a metody třídy jsou vypsány níže:

Třída Inventar:

atributy:
inventar (slovník)
metody:
__init__(self)
pridej(self, majetek)
pocet_polozek(self, fakulta)
cena_polozek(self, fakulta)
proved_amortizaci(self, fakulta)
Příklad výstupního souboru po běhu skriptu DBZamestnancu.py: vystup.txt.

EXAMPLE:

inventar = Inventar()
inventar.pridej(Polozka("FEI/4605511", "Zidle", "A1036", 1600, 0.05))
inventar.pridej(Polozka("FEI/4605512", "Stul", "A1036", 2360, 0.05))
print inventar.inventar["FEI/4605511"]
print inventar.cena_polozek("FEI")
inventar.proved_amortizaci("FEI")
print inventar.cena_polozek("FEI")
print inventar.cena_polozek("HGF")

Výstup:
Typ: Zidle, ID: FEI/4605511, Mistnost: A1036
3960
3762.0
0

předem děkuji

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: