Sobrecargar método

Milton Mazzarri milmazz en ubuntuchannel.org
Lun Dic 5 16:51:09 CET 2005


El lun, 05-12-2005 a las 11:31 +0100, Victor Peinado escribió:
> 
> El 2/12/05, Batista, Facundo<Facundo.Batista telefonicamoviles.com.ar> escribió:
> >
> 
> > Por otro lado, ¿por qué decis que usar isinstance() no es aconsejable?
> 
> He leído un par de artículos desaconsejando su uso. No los tengo a
> mano, lo siento, pero Hernán lo ha explicado mejor de lo que yo lo
> haría :-)
> 

Segun lo que he leido (lo cual es poco, ya que apenas tengo 3 dias
estudiando el lenguaje), siempre deberia utilizarse isinstance() para la
comparacion entre tipos de objetos, en vez de comparar directamente
dichos tipos.

MALO: if type(datos) is type(1):
BUENO: if isinstance(datos, int):

La cosa cambia un poco cuando intentamos comparar si un objeto es un
string, debe considerarse que dicho string venga codificado en unicode.
En python 2.3, str y unicode tienen un clase base comun, basestring,
para ello se haria lo siguiente:

if isinstance(datos, basestring)

Lo anterior puede complementarse en el documento Style Guide for Python
Code [1].

P.D.: Victor, es posible que encuentres alguna referencia a dichos
articulos?.

[1] http://www.python.org/peps/pep-0008.html

Un saludo:

-- 
Milton Mazzarri, a.k.a. [MilMazz] 
Usuario de GNU/Linux: #369158
Ubuntu Linux
http://www.milmazz.com
http://ubuntuchannel.org

------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


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