title: Insert value into the element of 2D array
body: <p>Supposed I created the 2D array of 3x4 with zeros initialization.
  Then, I want to add 100 into arr[0][1] and I expect that 100 is added Only into arr[0][1] cell. Refer to Case 1 and Case 2:</p>
  
  <p><strong>From Case 1:</strong>
  what I saw is that 100 is added into every row with column 1 of arr. It is not what i expected.</p>
  
  <p><strong>From Case 2</strong>
  The result is what i have expected. Can anyone help me explain? </p>
  
  <pre><code>Case 1:
  &gt;&gt;&gt; arr = [[0]*4]*3
  &gt;&gt;&gt; arr
  [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
  &gt;&gt;&gt; len(arr)
  3
  &gt;&gt;&gt; len(arr[0])
  4
  &gt;&gt;&gt; type(arr)
  &lt;class 'list'&gt;
  
  &gt;&gt;&gt; arr[0] [1] = 100
  &gt;&gt;&gt; arr
  [[0, 100, 0, 0], [0, 100, 0, 0], [0, 100, 0, 0]]
  
  
  
  Case 2:
  &gt;&gt;&gt; arr = [[0]*4 for _ in range(3)]
  &gt;&gt;&gt; arr
  [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
  
  &gt;&gt;&gt; type(arr)
  &lt;class 'list'&gt;
  
  &gt;&gt;&gt; arr[0] [1] = 100
  
  &gt;&gt;&gt; arr
  [[0, 100, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
  </code></pre>