| |||||||
Diyelim şöyle ki bir fonksiyonunuz var:
class Test:
def check(self,a,b,c):
if(a):
self.str = b*100
else:
self.str = c*100
a = Test()
def example():
for i in xrange(0,100000):
a.check(i,"b","c")
import profile
profile.run("example()")
|
Ve bu fonksiyonunun bir yerleden çok defa çağrıldığını düşünün.
Bu durumda ilk kere hariç diğer seferlerde sizi yavaşlatacak olan bir koşul kontrolü durumunuz olacaktır. Bu bakımdan şunu kullanın:
class Test2:
def check(self,a,b,c):
self.str = b*100
self.check = self.check_post
def check_post(self,a,b,c):
self.str = c*100
a = Test2()
def example2():
for i in xrange(0,100000):
a.check(i,"b","c")
import profile
profile.run("example2()")
|
Aslında bu örnek bir miktar basit, fakat if ifadeniz daha karmaşık (bir çok nokta içeren) bir ifade olsaydı ve sadece bir kere doğru olacağını biliyorsanız zaman kazancı sağlayabilirsiniz.
| ||||||||||