[Python] Re: Digest di Python, Volume 19, Numero 11

Gian Mario Tagliaretti gianmt a gnome.org
Ven 16 Nov 2007 16:06:01 CET


Il 16/11/07, Pietro Battiston<battiston a mail.dm.unipi.it> ha scritto:

> Grazie mille, in effetti č proprio quello che mi serviva. Ma __new__
> rimpiazza __init__?

No, __new__ che come ti hanno giā detto č solo per le classi new style
č chiamato da python stesso quando crei un'istanza della classe,
ovvero se fai

x = Foo(bar=23)

python eseguirā:

x = Foo._ _new_ _(Foo, bar=23)

proseguirā poi eseguendo __init__ con gli stessi argomenti (bar=23)

__new__ č uno static method diversamente da __init__ che č un metodo
dell'istanza x.

Come diceva Facundo, a meno che non hai eigenze molto particolari per
usare __new__ (per il singleton ad esempio) č sempre buona norma usare
solo __init__ che chiamerā __new__ al tuo poto.

ciao
-- 
Gian Mario Tagliaretti


Maggiori informazioni sulla lista Python