3

例如 iftableState是一个元组,我们声明一个变量:

x = tableState[1][:]

[:]意味着什么?

4

3 回答 3

5

它采用元组的副本,而不是对元组本身的引用。

语法是一个具有默认开始和结束值(0 和列表长度)的[:]切片,返回一个带有这些索引的新元组,因此实际上是内容的精确副本。

对于元组,这没有多大意义,因为元组是不可变的。您可以安全地传递对元组的引用,而无需更改其索引所指的内容。

不过,它对列表的工作方式相同。您经常需要创建列表的副本才能修改内容,并且使用默认的“所有元素”切片是一种不错、简洁且快速的方法。

于 2013-02-14T16:52:09.720 回答
0

[:]它类似于[0:]从 0 索引到末尾的拆分。它返回一个新的 List 。

于 2013-02-14T16:56:44.347 回答
0

通常,您正在提取元组的副本。请记住,尽管元组是不可变的,因此获取元组的副本并没有什么好处——它对列表更有用。

于 2013-02-14T16:54:50.950 回答