[Python] Passare perametri a/tra classi

simozack simozackml a gmail.com
Mar 17 Maggio 2011 11:23:59 CEST


2011/5/17 M a T <perini.matteo a gmail.com>:

> Però avrei la necessità di passare il parametro _omega0=xxx quando chiamo la
> classe.... tipo così:
> cw=Morlet(A,maxscale,notes,scaling=scaling,_omega0=5)

Quando si eredita da una classe, se non esplicitato nella nuova
classe, viene lanciato l'__init__ della classe da cui si deriva.
Infatti, se noti l'__init__ della classe Cwt non ha quel parametro.

Per risolvere hai diversi metodi, ma quello che a me piace di più
(solo perché più esplicito) è:

class Morlet(Cwt):
  def __init__(self, data, largestscale=1, notes=0, order=2,
scaling='linear', omega0=0):
    super(Morlet, self).__init__(data, largestscale=1, notes=0,
order=2, scaling='linear')
    self._omega0 = omega0

E vivi felice.

Ciao,
Simone


Maggiori informazioni sulla lista Python