Ver Mensaje Individual
  #18  
Antiguo 02-04-2011
Avatar de D-MO
D-MO D-MO is offline
Miembro
 
Registrado: ago 2005
Ubicación: root@debian:/#
Posts: 1.042
Reputación: 20
D-MO Va por buen camino
En efecto, tienes la razón en el primer punto, explico:
Teniendo las dos opciones, a y b en los archivos a.py y b.py de la siguiente manera:

a.py
Código:
class myList(list):
    
    def indexOf(self, value):
        try:
            return self.index(value)
        except ValueError:
            return None

x = myList()

print 'A:', x.indexOf('test')
b.py
Código:
class myList(list):
    
    def indexOf(self, value):
        if value in self:
            return self.index(value)
        else:
            return None

x = myList()

print 'B:', x.indexOf('test')
Se obtiene como resultado lo siguiente:

Código:
~/tmp$ time python a.py
A: None

real	0m0.046s
user	0m0.028s
sys	0m0.000s

~/tmp$ time python b.py
B: None

real	0m0.033s
user	0m0.024s
sys	0m0.000s
Gracias por el aporte

Saludos.
Responder Con Cita