class Magatzem :

    def __init__(self, catàleg ={}, estoc={}): 
        """
        Constructora  
        """
        self.catàleg = catàleg
        self.estoc = {}
        for e in estoc:
            if self.producteEnCataleg(e) :
                self.estoc[e] = estoc[e]

    def producteEnCataleg(self, producte) :
        return producte in self.catàleg
    def producteEnEstoc(self, producte) :
        return producte in self.estoc
    def preuProducte(self, producte) :
        return self.catàleg[producte]
    def nombreUnitatsProducte(self, producte) :
        return self.estoc[producte]
    def eliminarProducteCataleg(self, producte) :
        if not self.producteEnEstoc(producte) :
            del self.catàleg[producte]
    def afegirProducteCataleg(self, producte, preu): 
        self.catàleg[producte] = preu
    def eliminarProducteEstoc(self, producte) :
        del self.estoc[producte]
    def afegirProducteEstoc(self, producte, unitats) :
        if self.producteEnCataleg(producte):
            if self.producteEnEstoc(producte):
                self.estoc[producte] = self.estoc[producte] + unitats
            else:
                self.estoc[producte] = unitats

    def valorEstoc(self) :
        total =0
        for e in self.estoc:
            total = total + self.catàleg[e]*self.estoc[e]
        return total
