title: Slice assignment with empty list - why?
body: <p>i have a question. I afraid that it can be obvious to you, but i don't quite understand this at this moment.</p>
  
  <p>I just readed about slice assignment and how assignment of empty list works like delete item, f.e.:</p>
  
  <pre><code>&gt;&gt; L=['a','b','c','d']
  &gt;&gt; L[2:3] = []
  &gt;&gt; L
  ['a', 'b', 'd']
  </code></pre>
  
  <p>But here is my question - won't it be more logical to more expect this output?</p>
  
  <pre><code>['a', 'b', [], 'd']
  </code></pre>
  
  <p>I know that output above will be true if my code will look like this:</p>
  
  <pre><code>&gt;&gt; L=['a','b','c','d']
  &gt;&gt; L[2:3] = [[]]
  &gt;&gt; L
  </code></pre>
  
  <p>but why it's constructed this way and not like f.e.:</p>
  
  <pre><code>&gt;&gt; L=['a','b','c','d']
  &gt;&gt; L[2:3] = None
  &gt;&gt; L
  </code></pre>
  
  <p>It look over-complicated to me, cause i expect that when i do slice assignment i don't expect in this situation that it will change the length of my list or maybe i want just to remove the slice and initiate an empty list at the same time.</p>
  
  <p>EDIT: I don't know if i was clear enough - <strong>i did't understand why - when doing slice assignment - python interpreter delete an item in list instead of change this item for empty list.</strong></p>