[Python-es] declarar en una clase todas las variables en __init__() o no?

Milton Galo Patricio Inostroza Aguilera minoztro en gmail.com
Vie Ago 5 22:18:20 CEST 2011


El día 5 de agosto de 2011 15:28, kldgarrido <kldgarrido en gmail.com> escribió:
> Hola Amigos.

Hola Kaled:

>
> Me gustaría consultarles algo:

haber...

>
> A la hora implementar una clase consideran estético para python declarar
> todas las variables que se van utilizar en "def __init__():" o declarar
> según los métodos que la utilicen.

creo que no debemos pensar en estetico o antiestetico, sino más bien
en el razonamiento modular:  ¿de qué forma más fácil ver todas las
variables de instancias que tiene mi objeto? --> para mi, si concentro
todas las declaraciones en un solo método (__init__) es una buena
opción (estetico?)

>
> por ejemplo:
> Para crear una variable self.b que se va a imprimir por un método
> llamado self.imprimir()
>
> 1-caso:
> class a():
>  def __init__(self):
>    self.b=int()
>    self.c=2
>  def imprimir(self):
>    self.b=1
>    print self.b
>
> 2-caso:
> class a():
>  def __init__(self):
>    self.c=int()
>  def imprimir(self):
>    self.b=1
>    print self.b
>
> Ambos casos producen el mismo resultado. Pero cual ustedes consideran
> que es mas estético pythonicamente.

creo que es cómo mirar una sola pieza de software (método) para saber
que variables de instancias tienes.

>
> Muchas Gracias.

Saludos,


-- 
Milton


Más información sobre la lista de distribución Python-es