新闻动态

详解python编程slice与indices函数用法示例

发布日期:2021-12-30 08:31 | 文章来源:CSDN

一般来说,内置的slice()函数会创建一个切片对象,可以用在任何允许进行切片操作的地方。

下面是slice的简介:

# slice 两种用法
class slice(stop)
class slice(start, stop[, step])

返回一个表示由range(start,stop,step)所指定索引集的slice对象。 其中startstep参数默认为None。 切片对象具有仅会返回对应参数值(或其默认值)的只读数据属性start,stopstep。 它们没有其他的显式功能;不过它们会被 NumPy 以及其他第三方扩展所使用。

切片对象也会在使用扩展索引语法时被生成。 例如:a[start:stop:step]a[start:stop,i]

请参阅itertools.islice()了解返回迭代器的一种替代版本。

items = [0, 1, 2, 3, 4, 5, 6]
a = slice(2,4)
print(items[2:4])
# [2, 3]
 
items[a]
# [2:3]
 
items[a] = [10, 11]
print(items)
# [0, 1, 10, 11, 4, 5, 6]
del items[a]
# [0, 1, 4, 5, 6]

如果有一个slice对象的实例s,可以分别通过s.atart、s.stop以及s.step属性来得到关于该对象的信息。例:

a = slice(10, 50, 2)
print(a.start)
# 10
print(a.stop)
# 50
print(a.step)
# 2

下面是indices官方解释:

slice.indices(self,length)

此方法接受一个整型参数length并计算在切片对象被应用到length指定长度的条目序列时切片的相关信息应如何描述。其返回值为三个整型数组成的元组;这些数分别为切片的startstop索引号以及step步长值。索引号缺失或越界则按照正规连续切片的方式处理。

所有的值都已经恰当的限制在边界以内(当做索引操作时可避免出现IndexError异常)例:

s = 'HelloWorld'
a.indices(len(s))
# (5, 10, 2)
for i in range (*a.indices(len(s))):
 print(s[i])
# w
# r
# d

以上就是详解python编程slice与indices使用示例的详细内容,更多关于python编程slice与indices的资料请关注本站其它相关文章!

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

相关文章

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部