什么是 numpy 中的 ::(双冒号),就像 myarray[0::3] 中的一样? [复制]

Posted

技术标签:

【中文标题】什么是 numpy 中的 ::(双冒号),就像 myarray[0::3] 中的一样? [复制]【英文标题】:What is :: (double colon) in numpy like in myarray[0::3]? [duplicate] 【发布时间】:2011-10-30 17:37:17 【问题描述】:

可能重复:What is :: (double colon) in Python?

我阅读了What is :: (double colon) in Python when subscripting sequences? 的问题,但这并不能回答 myarray[x::y] 的意思。

【问题讨论】:

在我看来,其他问题也确实回答了您的问题。 myarray[0::3] 是扩展的切片语法,表示从元素 0 开始,步长为 3,并在 myarray 的末尾停止。 但是,看起来您链接的答案对您的问题也有效:获取列表的每个 yth 元素,从 xth 元素开始 【参考方案1】:

它打印列表/数组中的每个 yth 元素

>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[::3]
[1, 4, 7]

a[x::y] 的附加语法意味着获取从位置 x 开始的每个 yth 元素

即。

>>> a[2::3]
[3, 6, 9]

【讨论】:

请注意a[::3] 也包含第0 个索引处的项目,即数组中的1。所以你也可以写成a[0::3] 那么 [x:i:y] 呢?我在这里表示什么? 对于一维数组,x 是起点,i 是范围的终点,y 是步长。 a[::-1] 可用于反转数组。从原始问题中找到:-)

以上是关于什么是 numpy 中的 ::(双冒号),就像 myarray[0::3] 中的一样? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

numpy中双冒号的作用

双冒号是啥意思?

Pig中的双冒号到底是啥意思?

R中的双冒号(::)是啥?

Python中双冒号作用

c语言的双冒号是啥意思::