On 06/12/2013 22:07, Joel Goldstick wrote:
..........


Not that this will speed up your code but you have this:

     if not clockwise:
         s = start
         start = end
         end = s

Python people would write:
     end, start = start, end

this works for some small number of variables, but on my machine with python 2.7 I start losing with 4 variables eg

C:\code\optichrome\74663>python -mtimeit -s"a=1;b=2;c=3;d=4" "a,b,c,d=b,c,d,a"
1000000 loops, best of 3: 0.206 usec per loop

C:\code\optichrome\74663>python -mtimeit -s"a=1;b=2;c=3;d=4" 
"t=a;a=b;b=c;c=d;d=t"
10000000 loops, best of 3: 0.118 usec per loop


It doesn't seem to make much difference that the variables are related as I see a similar behaviour for simple assignments

C:\code\optichrome\74663>python -mtimeit -s"a=1;b=2;c=3;d=4;e=5;f=6;g=7;h=8" 
"a,b,c,d=e,f,g,h"
1000000 loops, best of 3: 0.204 usec per loop

C:\code\optichrome\74663>python -mtimeit -s"a=1;b=2;c=3;d=4;e=5;f=6;g=7;h=8" 
"a=e;b=f;c=g;d=h"
10000000 loops, best of 3: 0.103 usec per loop

for less than 4 variables the tuple method is faster.
--
Robin Becker

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to