Por que a atribuição de fatia estendida é menos flexível que a atribuição de fatia normal?

De acordo com a documentação do Python emfatias estendidas:

Se você tiver uma sequência mutável, como uma lista ou uma matriz, poderá atribuir ou excluir uma fatia estendida, mas existem algumas diferenças entre a atribuição às fatias estendidas e regulares. A atribuição a uma fatia regular pode ser usada para alterar o comprimento da sequência:

>>> a = range(3)
>>> a
[0, 1, 2]
>>> a[1:3] = [4, 5, 6]
>>> a
[0, 4, 5, 6]

Fatias estendidas não são tão flexíveis. Ao atribuir a uma fatia estendida, a lista no lado direito da instrução deve conter o mesmo número de itens que a fatia que está substituindo:

>>> a = range(4)
>>> a
[0, 1, 2, 3]
>>> a[::2]
[0, 2]
>>> a[::2] = [0, -1]
>>> a
[0, 1, -1, 3]
>>> a[::2] = [0,1,2]
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
ValueError: attempt to assign sequence of size 3 to extended slice of size 2

Não entendo por que o método de fatia "comum" funciona, mas o método de fatia "estendido" não funciona. O que diferencia uma fatia "comum" de uma fatia "estendida" e por que o método de fatia "estendida" falha?

questionAnswers(1)

yourAnswerToTheQuestion