a = [1,2]
a[1:1] = 3
引发异常: TypeError:只能分配一个可迭代的
如果将变量更改为可迭代,则不会引发异常。
a = ['a','c']
a[1:1] = 'b'
如果变量不是可迭代的,为什么切片[1:1]的分配引发异常?
答案 0 :(得分:1)
因为期望匹配位置,因为对他来说a[1:1]
是大小n
的一部分,即使n == 1
也会期望大小至少为1的可迭代。为什么有效:
>>> a[1:1] = [3]
>>> a
[1, 3, 2]