>>> ex=[1,2,3,4,5,6,7,8]
>>> ex
[1, 2, 3, 4, 5, 6, 7, 8]
>>> ex[1:4]=[99,88,77]
>>> ex
[1, 99, 88, 77, 5, 6, 7, 8]
>>> ex[1:1]=['s','t','u']
>>> ex
[1, 's', 't', 'u', 99, 88, 77, 5, 6, 7, 8]
为什么 ex[1:4] 和 ex[1:1] 给出相同的输出?ex[1:1] 中的第二个值有什么用?
他们没有给出相同的价值。在第一个中,元素被替换为,99, 88, 77
而在第二个中,列表被增加以容纳s, t, u
。
Python 的 Slice 表示法已在此问题中进行了解释。
ex[1:4]=[99,88,77]
ex
用内容替换切片99, 88, 77
。同时,ex[1:1]=['s', 't', 'u']
插入s, t, u
到列表中。
通过执行 ex[1:1],您将“插入”放在索引 1 之前,而不是替换索引 1。
ex = [1,2,3,4,5,6,7]
ex[1:1] = 3
print ex
产量:
[1,3,2,3,4,5,6,7]
lst[start:end] = some_seq
表示用 RHS 上的序列替换开头start
和结尾的切片。end - 1
lst[n:n] = sequence
表示将 RHS 上的序列插入到n
列表中的索引处。
我想说的不太一样。