##// END OF EJS Templates
Removed caching from the TimeitResult properties
Pablo Galindo -
Show More
@@ -79,21 +79,15 b' class TimeitResult(object):'
79 79 self.compile_time = compile_time
80 80 self._precision = precision
81 81 self.timings = [ dt / self.loops for dt in all_runs]
82 self._average = None
83 self._stdev = None
84 82
85 83 @property
86 84 def average(self):
87 if self._average is None:
88 self._average = math.fsum(self.timings) / len(self.timings)
89 return self._average
85 return math.fsum(self.timings) / len(self.timings)
90 86
91 87 @property
92 88 def stdev(self):
93 if self._stdev is None:
94 mean = self.average
95 self._stdev = (math.fsum([(x - mean) ** 2 for x in self.timings]) / len(self.timings)) ** 0.5
96 return self._stdev
89 mean = self.average
90 return self._stdev = (math.fsum([(x - mean) ** 2 for x in self.timings]) / len(self.timings)) ** 0.5
97 91
98 92 def __str__(self):
99 93 if self.loops == 1: # No s at "loops" if only one loop
General Comments 0
You need to be logged in to leave comments. Login now