首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Python中下标序列时::(双冒号)是什么?

在Python中下标序列时::(双冒号)是什么?
EN

Stack Overflow用户
提问于 2010-08-11 04:21:54
回答 8查看 262K关注 0票数 342

我知道在Python语言中可以使用像string[3:4]这样的东西来获取子字符串,但是在somesequence[::3]中3是什么意思呢

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2010-08-11 04:24:21

它的意思是“第一个参数没有任何东西,第二个参数没有任何东西,跳三个”。它每隔一段时间对序列中的每三个项目进行切片。Extended slices就是你想要的。Python 2.3中的新特性

票数 326
EN

Stack Overflow用户

发布于 2010-08-11 04:24:09

Python序列切片地址可以写为a[start:end:step],并且可以删除开始、停止或结束中的任何一个。a[::3]是序列的第三个元素。

票数 203
EN

Stack Overflow用户

发布于 2010-08-11 04:24:23

seq[::n]是每个n-th项在整个序列中的序列。

示例:

代码语言:javascript
复制
>>> range(10)[::2]
[0, 2, 4, 6, 8]

语法为:

代码语言:javascript
复制
seq[start:end:step]

所以你可以这样做(在Python 2中):

代码语言:javascript
复制
>>> range(100)[5:18:2]
[5, 7, 9, 11, 13, 15, 17]
票数 110
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3453085

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档