title: Python Nested List Comprehensions to create a matrix
body: <p>I'm new to list comprehensions and would like to replicate the following code below in for loops into a nested list comprehension.</p>
  
  <pre><code> master = []
   inner = []
   for x in range(1,8):
       inner = []
       for y in range(1,x+1):
           inner.append(str(x*y).rjust(2))
  
       master.append(inner)
  
  for m in master:
      print ' '.join(m)
  </code></pre>
  
  <p>The output looks like this:</p>
  
  <pre><code>  1
    2  4
    3  6  9
    4  8 12 16
    5 10 15 20 25
    6 12 18 24 30 36
    7 14 21 28 35 42 49
  </code></pre>
  
  <p>I was thinking something like:</p>
  
  <pre><code> test =  [  
      [str(x*y).rjust(2) for x in range(1,8)] 
      for y in range(1,x+1) 
   ] 
   for t in test:
       print ' '.join(t)
  </code></pre>
  
  <p>But I get a traceback error:</p>
  
  <pre><code> Traceback (most recent call last):
   File "python", line 3, in &lt;module&gt;
   NameError: name 'x' is not defined
  </code></pre>
  
  <p>Any python experts care to point me in the right direction?</p>
  
  <p>Thank you in advance!</p>