Implementando un Dado

Chema Cortes chemacortes en gmail.com
Vie Nov 23 14:01:28 CET 2007


tny escribió:
> El vie, 23-11-2007 a las 11:23 +0100, Beni escribió:
>> On Nov 23, 2007 10:29 AM, tny <a.porrua en gmail.com> wrote:
>>
>>> El vie, 23-11-2007 a las 09:19 +0100, Beni escribió:
>>>>     def tirada(min, max, cantidad=1, tipo=int):
>>> ...
>>>>         if type(int):
>>> ...
>>>>         elif type(float):
>>> ...
>>> no querrás decir type(tipo)=type(int) o algo de eso
>>>
>> Si llevas razón, mi código es:
>>
>> if type(tipo) = int:
> if type(tipo) == int: ;)

Siendo ortodoxos, la comprobación debería hacerse con el operador 'is':

if type(tipo) is int:
  ...

Lo que se quiere comprobar son "identidades", o lo que es lo mismo,
comprobar que ambos elementos son en realidad el mismo objeto. Con '=='
se comprueban valores, o lo que es lo mismo, que ambos elemento "valen"
lo mismo.


Y siendo aún más ortodoxo, la forma de comprobar "tipos" debe considerar
a los tipos derivados, por lo que se debería usar las funciones
issubclass e isinstance:

if issubclass(tipo,int):
  ...

------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes


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