python list copy: is there a difference between old[:] and list(old)?
<pre><code>old = [1, 2, 3]
</code></pre>

<p>What is the difference between the following two lines (if there is any)?</p>

<pre><code>new = old[:]
new = list(old)
</code></pre>

<p><strong>Update</strong> I had already accepted ubershmekel's answer but later I've learned an interesting fact: <code>[:]</code> is faster for small list (10 elements) but <code>list()</code> is faster for larger list (100000 elements). </p>

<pre><code>~$ python -S -mtimeit -s "a = list(range(10))" "a[:]"
1000000 loops, best of 3: 0.198 usec per loop
~$ python -S -mtimeit -s "a = list(range(10))" "list(a)"
1000000 loops, best of 3: 0.453 usec per loop
~$ python -S -mtimeit -s "a = list(range(100000))" "a[:]"
1000 loops, best of 3: 675 usec per loop
~$ python -S -mtimeit -s "a = list(range(100000))" "list(a)"
1000 loops, best of 3: 664 usec per loop
</code></pre>
