pkqbszs 发表于 2022-10-1 17:30:14

为什么这个代码不理解成插入一个空列表呢,按我的理解结果是[1,2,[],5]

>>> s =
>>> s = []
>>> print(s)

深谙流年 发表于 2022-10-1 18:13:31

s =
s[:] = []
s
[]
s =
s[:] =
s

pkqbszs 发表于 2022-10-1 18:26:47

深谙流年 发表于 2022-10-1 18:13


所以你想告诉我什么
没看懂你的意思

深谙流年 发表于 2022-10-1 18:40:51

pkqbszs 发表于 2022-10-1 18:26
所以你想告诉我什么
没看懂你的意思

你切片赋值   不加括号也是可以的

深谙流年 发表于 2022-10-1 18:41:28

深谙流年 发表于 2022-10-1 18:40
你切片赋值   不加括号也是可以的

s

s = 43,44
s

wp231957 发表于 2022-10-1 19:08:33

这个代码就是把索引为2 3 的地方置空

要是插入空列表    就要用insert 或者append 方法

Twilight6 发表于 2022-10-1 22:46:12


切片列表赋值是对应赋值列表中的元素的,例如:

>>>s =
>>>s =
>>>print(s)



如果想达到你所想的结果,应该这样赋值:s = [[]], 输出的结果即为 , 5]

所以这里你的代码结果就不难理解了:

# 索引01234
s =

# 此处切片赋值表示将切片部分赋值为新的数据
# 即索引 2~3 部分元素,依次赋值列表中的元素
# 但此时右边列表无元素,所以就将 2 和 3 索引位置空
s = []
print(s)
页: [1]
查看完整版本: 为什么这个代码不理解成插入一个空列表呢,按我的理解结果是[1,2,[],5]