Improving style (and speed)?
Alex Martelli
alex at magenta.com
Thu Aug 3 18:16:44 EDT 2000
More information about the Python-list mailing list
Thu Aug 3 18:16:44 EDT 2000
- Previous message (by thread): Groupware
- Next message (by thread): Improving style (and speed)?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
"ingo" <ingoogni at home.nl> wrote in message news:8F85D66E7seed7 at 212.120.66.218... [snip] > I did it. But I can't find a better, more elegant, way to do it. Lack of > experience. So I'm looking for some guidance. [snip] > if MinIndex==0: > Posy=Posy-1 > Posz=Posz-1 > elif MinIndex==1: > Posy=Posy > Posz=Posz-1 > elif MinIndex==2: > Posy=Posy+1 > Posz=Posz-1 > elif MinIndex==3: > Posy=Posy-1 > Posz=Posz > elif MinIndex==4: > Posy=Posy > Posz=Posz > elif MinIndex==5: > Posy=Posy+1 > Posz=Posz > elif MinIndex==6: > Posy=Posy+1 > Posz=Posz-1 > elif MinIndex==7: > Posy=Posy+1 > Posz=Posz > elif MinIndex==8: > Posy=Posy+1 > Posz=Posz+1 Let's see the deltas on Posy/Posz depending on MinIndex...: MinIndex 0 1 2 3 4 5 6 7 8 delta y -1 0 1 -1 0 1 1 1 1 delta z -1 -1 -1 0 0 0 -1 0 1 Now this is peculiar. Are the deltas truly meant to be identical and indistinguishable for minindex of 5 and 7, for example? Or aren't actually y and z confused in the cases 6 7 8 so that it should actually be...: MinIndex 0 1 2 3 4 5 6 7 8 delta y -1 0 1 -1 0 1 -1 0 1 delta z -1 -1 -1 0 0 0 1 1 1 this seems so much more natural and regular...! Isn't this the right table? If it is, then delta y is (minindex modulo 3) minus 1, and delta z is (minindex integer-divided 3) minus 1. So, in Python, the above set of lines could be changed into: Posy=Posy+(MinIndex%3)-1 Posz=Posz+(MinIndex/3)-1 or equivalent expressions -- if we had elementwise arithmetic, as per the recent proposal, for example: Posz,Posy=(Posz,Posy)~+divmod(MinIndex,3)~-(1,1) [but we don't, so don't try this:-)]. But that's dependent on there being a bug in your code as presented. Is there...? Alex
- Previous message (by thread): Groupware
- Next message (by thread): Improving style (and speed)?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list