| from pybench import Test | |
| class TupleSlicing(Test): | |
| version = 2.0 | |
| operations = 3 * 25 * 10 * 7 | |
| rounds = 500 | |
| def test(self): | |
| r = range(25) | |
| t = tuple(range(100)) | |
| for i in xrange(self.rounds): | |
| for j in r: | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| m = t[50:] | |
| m = t[:25] | |
| m = t[50:55] | |
| m = t[:-1] | |
| m = t[1:] | |
| m = t[-10:] | |
| m = t[:10] | |
| def calibrate(self): | |
| r = range(25) | |
| t = tuple(range(100)) | |
| for i in xrange(self.rounds): | |
| for j in r: | |
| pass | |
| class SmallTuples(Test): | |
| version = 2.0 | |
| operations = 5*(1 + 3 + 6 + 2) | |
| rounds = 90000 | |
| def test(self): | |
| for i in xrange(self.rounds): | |
| t = (1,2,3,4,5,6) | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| l = list(t) | |
| t = tuple(l) | |
| t = (1,2,3,4,5,6) | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| l = list(t) | |
| t = tuple(l) | |
| t = (1,2,3,4,5,6) | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| l = list(t) | |
| t = tuple(l) | |
| t = (1,2,3,4,5,6) | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| l = list(t) | |
| t = tuple(l) | |
| t = (1,2,3,4,5,6) | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c,d,e,f = t | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| a,b,c = t[:3] | |
| l = list(t) | |
| t = tuple(l) | |
| def calibrate(self): | |
| for i in xrange(self.rounds): | |
| pass |