title: 2d array of lists in python
body: <p>I am trying to create a 2d matrix so that each cell contains a list of strings.
  Matrix dimensions are known before the creation and I need to have access to any element from the beginning (not populating a matrix dynamically). => I think some kind of preallocation of space is needed.</p>
  
  <p>For example, I would like to have a 2X2 matrix:</p>
  
  <pre><code>[['A','B']          ['C'];
    ['d']       ['e','f','f']]
  </code></pre>
  
  <p>with support of traditional matrix access operations, like</p>
  
  <pre><code>(Matrix[2][2]).extend('d')
  </code></pre>
  
  <p>or </p>
  
  <pre><code>tmp = Matrix[2][2]
  tmp.extend('d')
  Matrix[2][2] = tmp
  </code></pre>
  
  <p>to manipulate with cells content.</p>
  
  <p>How to accomplish it in python?</p>