Tuster 发表于 2024-3-10 17:21:21

求助大神

s =
s =
输出s为
请问这个中括号里面表示什么呀?len(s):后面的空格表示什么呀,后面的不是下标索引的意思吗怎么能添加到切片里?(原列表下标是0-4,如果新添加下标的话应该是吧)
为什么要用=进行赋值操作呀?

FishC 发表于 2024-3-10 17:21:28

中括号里面表示一个空的列表,即一个没有任何元素的列表。
len(s):后面的空格表示函数调用时的参数传递,len函数是用来获取列表的长度的,所以len(s)表示获取列表s的长度。
切片操作是基于索引的,切片的下标索引从0开始,所以我们可以通过切片来获取列表中的一部分数据。不过切片操作是返回一个新的列表,不能直接添加到切片里。
赋值操作是将右边的值赋给左边的变量,这样可以将数据保存起来以供后续使用。在这个例子中,可以通过赋值操作将列表s赋给变量s,以便在其他地方使用。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

小甲鱼的二师兄 发表于 2024-3-10 17:28:11

本帖最后由 小甲鱼的二师兄 于 2024-3-10 17:31 编辑

请问这个中括号里面表示什么呀?

哪里的中括号?

s = 表示的是列表的创建。

s 中间有冒号,表示列表的切片操作,冒号左边是切片的开始位置,后边是结束位置(这里省略表示切到列表末尾)

后面的 不是下标索引的意思吗?

不是, 表示一个列表,这个列表中只有一个元素,就是 6。


让我们整理一下:

因为 s 代表的是一个空的切片,所以将 赋值给它实际上是在列表的末尾追加元素 6。

这就是为什么执行这个操作后的列表 s 变成了 。

注意:这里 不是一个下标索引,而是一个包含单个元素 6 的新列表。

在 Python 中,切片赋值可以用来替换(或在这种情况下添加)原列表的一部分。

总结来说,这个一个比较高阶的技巧,利用切片将一个新元素添加至列表末尾的一种方式,等同于其他添加元素到列表的方法,例如 s.append(6)。

jackz007 发表于 2024-3-10 17:36:38

本帖最后由 jackz007 于 2024-3-10 17:41 编辑

在 IDLE 环境中,分 2 次键入:
s =
len(s)
      你会看到,系统会回应数字 5,表示列表 s 包含有 5 个元素,所以,len() 是 Python 的内建函数,用途是获取对象(字符串、元组、列表等)的长度。
      而 s 是切片,字符串、元组、列表等序列对象均支持切片,用来获取序列对象中的一部分,例如,在本例中,s 则代表列表 s 索引从 1 到 3 的元素,具体包含了 ,一共 2 个元素。
       那么,s 代表什么呢?前面说过,len(s) = 5,所以,s 其实就是 s,代表从列表 s 索引为 5 的位置开始切片,一直到列表结束,对于 s 而言,最后一个元素的索引是 4,索引为 5 的位置上已经没有元素了,所以,s = 6 其实就是让 s = 6,也就是为 s 新添加一个元素 6。   
页: [1]
查看完整版本: 求助大神