title: Really basic Sudoku-like programme
body: <p>I'm trying to create a procedure (symmetric(p)) that takes as an input a list which has to be square shaped like a Sudoku game, and whose components are also lists, and outputs the value true or false if the "square" is symmetric or not.</p>
  
  <p>The square is symmetric if the first row is equivalent to the first column, the second row is equivalent to the second column and so on.  Now, I've written the code but it doesn't work. Its output is always True. Here is a paste of the code:</p>
  
  <pre><code>def column_building(list, position):
    column = []
    for i in list:
      column.append(i[position])
    return column
  
  a = [[1, 2, 3],
       [2, 3, 4],
       [3, 4, 1]]
  
  b = [["cat", "dog", "fish"],
       ["dog", "dog", "dog"],
       ["fish","fish","cat"]]
  
  def symmetric(p):
    counter = 0
    for e in p:
      if e == column_building(p, counter):
        counter = counter + 1
        return True
      else:
        return False
        break
  
  print symmetric(b)
  </code></pre>
  
  <p>In the code, the first procedures tell which is the column in a determined position. <code>a</code> and <code>b</code> are lists that I created to use as examples. And, as I said, it outputs always True, but if I use <code>b</code>, when <code>e</code> is the second element of the list, it is not equal to the column built with the second position (<code>[dog, dog, fish]</code>).</p>