an error in commented code?

John Salerno johnjsal at NOSPAMgmail.com
Fri Apr 28 14:04:29 EDT 2006


Here's my code, with the error following it:

props = ['A', 'B', 'C', 'D']
group1 = ['C', 'A', 'D', 'B', 17]
group2 = ['A', 'B', 'D', 'C', 32]
group3 = ['D', 'B', 'C', 'A', 34]
group4 = ['B', 'A', 'C', 'D', 17]

# Submitter: Michael Davies
def all_perms(str):
     if len(str) <=1:
         yield str
     else:
         for perm in all_perms(str[1:]):
             for i in range(len(perm)+1):
                 #nb str[0:1] works in both string and list contexts
                 yield perm[:i] + str[0:1] + perm[i:]

def checkOrder(x, y):
     x_votes = 0
     y_votes = 0

     if group1.index(x) < group1.index(y):
         x_votes += group1[4]
     else:
         y_votes += group1[4]

     if group2.index(x) < group2.index(y):
         x_votes += group2[4]
     else:
         y_votes += group2[4]

     if group3.index(x) < group3.index(y):
         x_votes += group3[4]
     else:
         y_votes += group3[4]

     if group4.index(x) < group4.index(y):
         x_votes += group4[4]
     else:
         y_votes += group4[4]

     if x_votes > y_votes:
         return x
     else:
         return y

for order in all_perms(props):
#   if reduce(checkOrder, order) == 'A':
#       print 'A wins:'
#       print order
#   if reduce(checkOrder, order) == 'B':
#       print 'B wins:'
#       print order
     if reduce(checkOrder, order) == 'C':
         print 'C wins:'
         print order
#   if reduce(checkOrder, order) == 'D':
#       print 'D wins:'
#       print order


 >>>
*** Error in script or command!

Traceback (most recent call last):
   File "C:\Python24\myscripts\ecco\1-1-1.py", line 60
     #       print order
                       ^
SyntaxError: invalid syntax
 >>>

Line 60 also happens to be the very last line, which is commented. I've 
tried a couple of different things to see if it's a whitespace problem, 
but it doesn't seem to be. I'm just confused why it detects an error in 
the commented code anyway.

Thanks.



More information about the Python-list mailing list